找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 29168|回复: 5

[加密解密] 批处理记录、修改自身密码

[复制链接]
发表于 2008-4-18 01:14:33 | 显示全部楼层 |阅读模式
闲来无事,写了个可修改自身密码的批处理
特点:
     把批处理的密码乱序后记录在自身的第一行,增加 “安全性” 呵呵。。
  输入正确密码后,可以修改密码。新密码同样会被乱序后写在第一行。
  不产生临时文件,不导致文件无限扩大。
  1. ::246897531
  2. @echo off
  3. ::code 随风 @bbs.bathome.net   2008-04-17
  4. set /p code=<"%~0"
  5. set "code=%code:~2%"
  6. setlocal EnableDelayedExpansion
  7. call :lis "%code%"
  8. endlocal&set "code=%a%"
  9. set /a ci=3
  10. :ccc
  11. cls
  12. echo\&echo  你还有 %ci% 次机会
  13. echo\&echo  正确密码是:%code%
  14. echo\&set /p mm= 请输入密码:
  15. if /i "%mm%"=="%code%" goto ok
  16. set /a ci-=1
  17. if %ci% equ 0 (goto cuo) else goto ccc
  18. :ok
  19. cls&echo 密码正确
  20. echo\&echo 可直接输入新密码,直接按回车保留原密码
  21. set /p code=
  22. setlocal EnableDelayedExpansion
  23. call :loop "%code%"
  24. endlocal&set "code=%b%%a%"
  25. echo %code%
  26. goto xie
  27. :lis 将密码还原
  28. set a=!a!!code:~-1,1!
  29. set code=!code:~0,-1!
  30. if not defined code goto :eof
  31. set a=!a!!code:~0,1!
  32. set code=!code:~1!
  33. if defined code goto lis
  34. goto :eof
  35. :loop 将密码乱序
  36. set a=!code:~0,1!!a!
  37. set code=!code:~1!
  38. if not defined code goto :eof
  39. set b=!b!!code:~0,1!
  40. set code=!code:~1!
  41. if not defined code goto :eof
  42. goto loop
  43. :cuo
  44. cls&echo\&echo  密码连续输入错误,下次再试吧。。。
  45. echo\&echo  按任意键退出。。。
  46. echo\&pause>nul&exit
  47. :xie
  48. for /f "delims=" %%a in ('type "%~0"') do (
  49.   if not defined flag (
  50.     set flag=a
  51.     >"%~0" echo ::%code%
  52.   ) else >>"%~0" echo %%a
  53. )
复制代码
发表于 2008-4-18 10:35:43 | 显示全部楼层
积极学习中..........
发表于 2008-4-18 21:36:07 | 显示全部楼层
牛啊
嘘唏
学习了。能不能解释每行的代码含义啊。
发表于 2011-9-1 21:17:30 | 显示全部楼层
“%~0”学习了~
发表于 2013-5-1 10:51:51 | 显示全部楼层
貌似我还是不太明白
发表于 2018-9-17 16:51:34 | 显示全部楼层
不懂有什么用处呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 22:59 , Processed in 0.019432 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表