[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[代码合集] 好东西——自动加密的批处理 (顺便解释下这段代码)

  1. @echo off
  2. REM ======================================================================
  3. REM
  4. REM Batch File -- Created with SAPIEN Technologies PrimalScript 4.0
  5. REM
  6. REM NAME: 批量加密打包单个文件,并生成对应密码表
  7. REM
  8. REM AUTHOR: hitme ,
  9. REM DATE  : 2006-12-16
  10. REM
  11. REM COMMENT: 密码由随机数字组成,长度与文件名长度相同
  12. REM
  13. REM ======================================================================
  14. @echo off
  15. :repare
  16. del pass.txt tmp.txt 2>nul
  17. md package 2>nul
  18. setlocal ENABLEDELAYEDEXPANSION
  19. :input
  20. echo.
  21. set /p input=加密打包文件还是文件夹^(F=文件,D=文件夹,A=全部^)
  22. echo.
  23. if /i "%input%"=="f" (set key=/aa) else (
  24.      if /i "%input%"=="d" (set key=/ad) else (
  25.                if /i "%input%"=="a" (set key=) else goto :input))
  26. :code
  27. for /f "delims=" %%i in ('dir %key%/b^|findstr /v "%~nx0 package"') do (
  28.       echo.%%i>tmp.txt
  29.       echo. >>tmp.txt
  30.       for /f "delims=:" %%a in ('findstr /o "." tmp.txt') do (
  31.        set /a len=%%a - 2
  32.       )
  33.       set m=
  34.       for /l %%l in (1,1,!len!) do (
  35.        echo %random% >nul
  36.        set  m=!m!!random:~-1!
  37.       )
  38.       echo %%i:!m!>>pass.txt
  39.       del tmp.txt>nul
  40.       
  41. )
  42. endlocal
  43. :package
  44. setlocal
  45. set path=%path%;c:\program files\winrar
  46. if exist pass.txt (
  47.     for /f "tokens=1* delims=:" %%i in (pass.txt) do rar a -p%%j "package\%%~ni.RAR" "%%i"
  48.    
  49.     move pass.txt package
  50. start package
  51. ) else echo...未能打包
  52. pause
复制代码
1

评分人数

挺实用的小工具,万一丢了密码表就OVER。
代码还可以简化
心绪平和,眼藏静谧。

TOP

也来看看!
就是不知道安不安全!

TOP

多谢分享。。。。。。

TOP

返回列表