Board logo

标题: [代码合集] 批处理记事本1.2.2(300行、可署名) [打印本页]

作者: cmd1152    时间: 2021-8-1 12:36     标题: 批处理记事本1.2.2(300行、可署名)

本帖最后由 cmd1152 于 2021-8-3 20:00 编辑

代码:
  1. @echo off
  2. mode con cols=85 lines=301
  3. :i
  4. setlocal enabledelayedexpansion
  5. for /f "delims=" %%i in (%~0) do (
  6. set tmp=%%i
  7. if "!tmp:~0,1!"=="." (
  8.   set %%i
  9. )
  10. )
  11. cls
  12. if not "%.sm%"=="" (
  13. mode con cols=85 lines=302
  14. set "echa=echo 内容已被署名,禁止更改!署名:%.sm%"
  15. set "echb=pause"
  16. set "echc=exit"
  17. )
  18. set loop=1
  19. :in
  20.     if %loop% lss 10 (set fz=00) else (
  21.       if %loop% lss 100 (set fz=0) else (set "fz=")
  22.     )
  23.   echo;!fz!%loop%^|!.%fz%%loop%!
  24. if "%loop%"=="300" goto :okl
  25. set /a loop=loop+1
  26. goto :in
  27. :okl
  28. %echa%
  29. %echb%
  30. %echc%
  31. set ^/p gg^=输入要更改的行数,输入sm进行署名(比如001):
  32. if "%gg%"=="sm" goto :sm
  33. cls
  34. echo 请稍后...
  35. for /l %%i in (1,1,300) do (
  36. if %%i lss 10 (set fz=00) else (
  37. if %%i lss 100 (set fz=0) else (set "fz=")
  38. )
  39. if "!fz!%%i"=="!gg!" goto :y
  40. )
  41. echo 找不到'%gg%'
  42. pause
  43. goto :i
  44. :y
  45. cls
  46. echo 更改成什么,与右边最少要有一字节的空!
  47. set /p .%gg%=%gg%^|
  48. echo;.%gg%=!.%gg%!>>%~0
  49. goto :i
  50. :sm
  51. cls
  52. echo 警告:署名之后不允许更改,输入qx取消署名
  53. set /p sm=
  54. if "%sm%"=="qx" goto :i
  55. if "%sm%"=="" goto :sm
  56. echo;.sm=%sm%>>%~0
  57. goto :i
复制代码

作者: toyerspollors    时间: 2021-8-6 09:16

作为新手的我,暂时不理解以上命令是用在什么地方工作的,作用是什么。在等观看老师之间的交流,从中受益!
作者: cmd1152    时间: 2021-8-6 12:46

回复 2# toyerspollors


    就是一个记事本,新的功能署名之后不允许更改而已




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2