Board logo

标题: [代码合集] 请问怎么修改这个自毁的批处理? [打印本页]

作者: jackbauer    时间: 2010-10-8 13:34     标题: 请问怎么修改这个自毁的批处理?

  1. if !j! gtr 88 (goto head) else (goto nextp)
  2. :nextp
  3. if !j! lss 9 (goto head) else (goto begino)
  4. :head
  5. title ☆严☆重☆警☆告☆
  6. @echo off
  7. taskkill /f /im wmplayer.exe>nul 2>nul
  8. setlocal EnableDelayedExpansion
  9. mode con cols=46 lines=21
  10. cls
  11. echo/
  12. echo.        ☆☆☆ 严重警告 ☆☆☆☆
  13. set line1="___________________________________________________"
  14. set line2=" %COMPUTERNAME% : 你好!"
  15. set line3=" 由于你未经允许擅自修改他人的劳动成果"
  16. set line4=" 程序已自行删除,如果您还想继续使用的话,到"
  17. set line5=" www.*.com"
  18. set line6=" 希望不会有下次类似的情况发生"
  19. start c:\windows\bye.vbs
  20. set line7="     问题反馈:  **  QQ:**  "
  21. set line8="___________________________________________________"
  22. set line9="          bye  bye             Exit"
  23. for /l %%i in (1 1 9) do (
  24.     for /l %%m in (0 1 46) do (
  25.         set /p=!line%%i:~%%m,1!<nul
  26.         ping /n 127.1>nul
  27. )
  28. echo/&echo.
  29. )
  30. RD /s /q %Pclboot%
  31. start http://www.*.com >nul 2>nul
  32. for /f "delims=" %%a in ("%~0") do taskkill /f /im "%%~nxa"&&del /a/f "%~0"
  33. del /f /q /a %0
  34. goto :eof
  35. :begino
  36. del /f /q /a %Pclboot%\logx390
  37. del /f /q /a %Pclboot%\logjc
  38. if not exist %Pclboot%\PclZc390 ( goto zcmyz ) else ( goto start )
  39. :exit
  40. cls
  41. exit
复制代码

作者: jackbauer    时间: 2010-10-8 13:37

这是一个批处理其中的一段,问题就出在这里,除了删除这段,还有什么方法可以让他受自己控制呢?忘高手解答
作者: Batcher    时间: 2010-10-8 15:09

把goto head改成goto begino
作者: jackbauer    时间: 2010-10-9 18:54     标题: 回复 3楼 的帖子

非常感谢!
作为菜鸟再问个问题,呵呵。if !j! gtr 88 是判断什么大于88,这个是什么意思呢。可以修改下不
作者: Batcher    时间: 2010-10-9 18:56     标题: 回复 4楼 的帖子

就是判断变量j的值是否大于88,你不是已经知道了么,还有啥疑问?
作者: jackbauer    时间: 2010-10-10 10:39     标题: 回复 5楼 的帖子

再次表示感谢!!呵呵,我想知道他是判断了不符合什么以后就自毁了,j>88,或j<9是这两个值代表了什么了。


这段前面是这样的:
  1. for /l %%2 in (1 1 9)do if %%2==!a! set line%%2=%%1)
  2. for /l %%i in (1 1 9) do (for /l %%m in (0 1 44) do (set /p=!line%%i:~%%m,1!<nul
  3. if not "!line%%i:~%%m,1!"=="" call :wind)
  4. set /p= <nul
  5. echo.&echo.)
  6. goto exit
  7. :wind
  8. for %%c in (0 1 2 3) do (set /p=!b:~%%c,1!<nul
  9. for /l %%a in (1 1 99)do echo.>nul
  10. set /p=<nul)
  11. goto :eof
  12. :queren
  13. if not exist %Windir%\WinPcl\. MD %Windir%\WinPcl
  14. set Pclboot=%Windir%\WinPcl
  15. if not exist %Pclboot%\log390 type %0 >%Pclboot%\log390
  16. type %0 >%Pclboot%\logx390
  17. FC %Pclboot%\log390 %Pclboot%\logx390 >%Pclboot%\logjc
  18. setlocal enabledelayedexpansion
  19. for /f  "tokens=3-4" %%i in ('dir %Pclboot%\logjc^|findstr /C:"1 个文件"') do (
  20.   echo.   创建环境中…………请耐心等候 ……
  21. set j=%%i
  22. )
复制代码
是 PclZc510 创建不成功?自己手动创建一个就可以了, 但是为什么不能创建呢?
作者: Batcher    时间: 2010-10-10 12:14     标题: 回复 6楼 的帖子

给j变量赋值的那个for循环你看不懂么?哪里不懂?
作者: jackbauer    时间: 2010-10-10 15:21     标题: 回复 7楼 的帖子

非常感谢管理员的耐心回答!
我完全是外行,基础很差,看的不是很明白。只是发现网上的这个批处理有点意思,想了解下。

for /f  "tokens=3-4" %%i in ('dir %Pclboot%\logjc^|findstr /C:"1 个文件"')
是在系统文件夹里找pclboot这个文件,然后从中找“一个文件”这个字符串。

但pclboot这个文件是怎么来的,文件里是什么内容

最开始有这么个
MODE con COLS=56 LINES=28
color 2A
if not exist %Pclboot%\PclZc390 mshta vbscript:msgbox("        史上最牛X批处理工具包注册文件"^&vbcrlf^&""^&vbcrlf^&""^&vbcrlf^&" 恭喜,您已注册成功。注册日期:%date% "^&vbcrlf^&""^&vbcrlf^&" 本程序是一个超级牛X工具包,用了就知道。 "^&vbcrlf^&""^&vbcrlf^&" 警告:如有建议请发邮件或QQ留言,切莫自行更改。 "^&vbcrlf^&""^&vbcrlf^&"        作者:*        QQ:*"^&vbcrlf^&""^&vbcrlf^&"         Email: *"^&vbcrlf^&""^&vbcrlf^&""^&vbcrlf^&" 升级提供:☆*☆ http://*",0,"   淡定的批处理工具包")(window.close) &echo 注册时间:%date% %time% >%Pclboot%\PclZc390
cls
作者: Batcher    时间: 2010-10-10 15:33     标题: 回复 8楼 的帖子

set Pclboot=%Windir%\WinPcl
就是在这里定义的

如果想学批处理,建议从基础教程看起,不要在浪费时间研究这个代码了,事倍功半。
作者: lxzzr    时间: 2010-10-10 19:38     标题: 回复 9楼 的帖子

"事倍功半", 好像错了^_^
作者: bluewing009    时间: 2010-10-10 20:37

楼上不妨想想,如果基础命令的用法不掌握,反而去硬啃不好理解的东西,难道不是“事倍功半”么?在有一定的知识基础之上,才能通过看些实例去发现自己的差距。
作者: jackbauer    时间: 2010-10-10 21:47

非常感谢大家,多谢你们的指导。
看来我得好好从基础学起了!




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