- 帖子
- 2
- 积分
- 14
- 技术
- 0
- 捐助
- 0
- 注册时间
- 2013-1-1
|
[文本处理] 批量加密打包单个文件的批处理文件(请高手帮忙修改一下)
这个批处理的密码是随机的,请问能更改成自定义密码吗?还有压缩后的文件名也是,能不能改成前缀相同后面的数字不一样呢?(不如:tu01~tu***这样)
============================================================================================
@echo off
REM ======================================================================
REM
REM Batch File -- Created with SAPIEN Technologies PrimalScript 4.0
REM
REM NAME: 批量加密打包单个文件,并生成对应密码表
REM
REM AUTHOR: hitme ,
REM DATE : 2006-12-16
REM
REM COMMENT: 密码由随机数字组成,长度与文件名长度相同
REM
REM ======================================================================
@echo off
:repare
del pass.txt tmp.txt 2>nul
md package 2>nul
setlocal ENABLEDELAYEDEXPANSION
:input
echo.
set /p input=加密打包文件还是文件夹^(F=文件,D=文件夹,A=全部^)
echo.
if /i "%input%"=="f" (set key=/aa) else (
if /i "%input%"=="d" (set key=/ad) else (
if /i "%input%"=="a" (set key=) else goto :input))
:code
for /f "delims=" %%i in ('dir %key%/b^|findstr /v "%~nx0 package"') do (
echo.%%i>tmp.txt
echo. >>tmp.txt
for /f "delims=:" %%a in ('findstr /o "." tmp.txt') do (
set /a len=%%a - 2
)
set m=
for /l %%l in (1,1,!len!) do (
echo %random% >nul
set m=!m!!random:~-1!
)
echo %%i:!m!>>pass.txt
del tmp.txt>nul
)
endlocal
:package
setlocal
set path=%path%;c:\program files\winrar
if exist pass.txt (
for /f "tokens=1* delims=:" %%i in (pass.txt) do rar a -p%%j "package\%%~ni.rar" "%%i"
move pass.txt package
start package
) else echo...未能打包 & pause
endlocal |
|