@echo off&mode con cols=75 lines=20&title %~n0
:begin
cls
set route=%cd%
call:color 04 "1.加密批处理 2.解密批处理" 0
set i=1
set /p i= 你的选择:
if %i%==1 goto lock
if %i%==2 goto unlock
goto begin
:lock
cls
set /p b=要加密文件的位置:
for /f "tokens=*" %%i in ("%b%") do (
cd /d "%%~dpi"
set name="%route%\new_%%~nxi"
)
:run
if not exist "%b%" goto error
echo %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a >%name%
echo cls>>%name%
type %b%>>%name%
setlocal enabledelayedexpansion
for %%i in (%name%) do (
echo %%~zi >nul 2>nul
set size=%%~zi
echo !size!
set num=!size:~-1!
echo !num!
set /a mod=!num!%%2
echo !mod!
if !mod! equ 0 (goto end) else (echo.>>%name% ) & goto end
)
:error
cls&call:color 04 "文件路径错误," 0
pause & goto lock
:end
echo.
call:color 04 "加密过程完成," 0
pause
cls
echo.
set c=a
set /p c=A.继续其它操作 B.退出程序 请选择:
if /i "%c%"=="A" cls&goto begin
if /i "%c%"=="B" exit
if /i "%c%" NEQ "A" if /i "%c%" NEQ "B" cls&goto end
:unlock
cls
set /p a=请输入要解密的文件:
for /f "tokens=*" %%i in ("%a%") do (
cd /d "%%~dpi"
set name="%route%\unlock_%%~nxi"
)
set "a=%a:"=%"
:go
if not exist "%a%" call:color 04 "文件路径错误," 0 & pause & goto unlock
for /f "tokens=*" %%c in ("%a%") do (
cd /d "%%~dpc"
if exist %name% attrib -s -h -r -a %name%
echo.>%name%
for /f "tokens=*" %%i in (%%~nxc) do (
echo %%i>>%name%
)
)
cls&echo.
call:color 04 "解密过程完成," 0
pause&goto begin
:color
if %3 neq 1 (set/p=<nul>%2) else echo.>%2
findstr /a:%1 .* "%~2*"
del "%~2"
goto :eof
:begin
cls
set route=%cd%
call:color 04 "1.加密批处理 2.解密批处理" 0
set i=1
set /p i= 你的选择:
if %i%==1 goto lock
if %i%==2 goto unlock
goto begin
:lock
cls
set /p b=要加密文件的位置:
for /f "tokens=*" %%i in ("%b%") do (
cd /d "%%~dpi"
set name="%route%\new_%%~nxi"
)
:run
if not exist "%b%" goto error
echo %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a %%%%a >%name%
echo cls>>%name%
type %b%>>%name%
setlocal enabledelayedexpansion
for %%i in (%name%) do (
echo %%~zi >nul 2>nul
set size=%%~zi
echo !size!
set num=!size:~-1!
echo !num!
set /a mod=!num!%%2
echo !mod!
if !mod! equ 0 (goto end) else (echo.>>%name% ) & goto end
)
:error
cls&call:color 04 "文件路径错误," 0
pause & goto lock
:end
echo.
call:color 04 "加密过程完成," 0
pause
cls
echo.
set c=a
set /p c=A.继续其它操作 B.退出程序 请选择:
if /i "%c%"=="A" cls&goto begin
if /i "%c%"=="B" exit
if /i "%c%" NEQ "A" if /i "%c%" NEQ "B" cls&goto end
:unlock
cls
set /p a=请输入要解密的文件:
for /f "tokens=*" %%i in ("%a%") do (
cd /d "%%~dpi"
set name="%route%\unlock_%%~nxi"
)
set "a=%a:"=%"
:go
if not exist "%a%" call:color 04 "文件路径错误," 0 & pause & goto unlock
for /f "tokens=*" %%c in ("%a%") do (
cd /d "%%~dpc"
if exist %name% attrib -s -h -r -a %name%
echo.>%name%
for /f "tokens=*" %%i in (%%~nxc) do (
echo %%i>>%name%
)
)
cls&echo.
call:color 04 "解密过程完成," 0
pause&goto begin
:color
if %3 neq 1 (set/p=<nul>%2) else echo.>%2
findstr /a:%1 .* "%~2*"
del "%~2"
goto :eof