Windows批处理大全
windows常用批处理脚本
windows常⽤批处理脚本1、拷贝windows远程服务器上的指定⽂件夹到本地服务器指定⽬录批处理脚本如下
#使⽤管理员账号密码登录,拷贝⽂件
#bak⽂件夹需是共享⽂件夹
net use \\192.168.1.10\ipc$ 123456/user:adminstrator
xcopy \\192.168.1.10\bak\gsdebug\*.* D:\bak\gsdebug /D /E /Y /H /K
net use \\192.168.1.10\ipc$ /delete
2、windows下删除指定⽂件夹下的⽂件,保留5天,批处理脚本如下
forfiles /p "D:\bak\gsdebug" /s /m *.* /d -5 /c "cmd /c del @path"
/p 指定的路径
/s 包括⼦⽬录
/m 查找的⽂件名掩码
/d 指定⽇期,有绝对⽇期和相对⽇期, 此处-7指当前⽇期的7天前
/c 运⾏的命令⾏表⽰为每个⽂件执⾏的命令。
命令字符串应该⽤双引号括起来。
@path - 返回⽂件的完整路径。
3、上传到阿⾥云OSS,批处理脚本如下
下载ossutil64.exe命令,配置.ossutilconfig⽂件
ossutil64.exe cp --config-file C:\ossutil64\.ossutilconfig -r D:\bak\ oss://csbak/bak --update。
Windows 批处理大全(附各种实例)
批处理文件是无格式的文本文件,它包含一条或多条命令。
它的文件扩展名为 .bat 或 .cmd。
在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。
使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。
当然我们的这个版本的主要内容是介绍批处理在入侵中一些实际运用,例如我们后面要提到的用批处理文件来给系统打补丁、批量植入后门程序等。
下面就开始我们批处理学习之旅吧。
一.简单批处理内部命令简介1.Echo 命令打开回显或关闭请求回显功能,或显示消息。
如果没有任何参数,echo 命令将显示当前回显设置。
语法echo [{on|off}] [message]Sample:@echo off / echo hello world在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。
2.@ 命令表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。
Sample:@echo off@echo Now initializing the program,please wait a minite...@format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,可喜的是微软留了个autoset这个参数给我们,效果和/y是一样的。
)3.Goto 命令指定跳转到标签,找到标签后,程序将处理从下一行开始的命令。
语法:goto label (label是参数,指定所要转向的批处理程序中的行。
)Sample:if {%1}=={} goto nop arm sif {%2}=={} goto nop arm s(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。
计算机CMD命令大全
@echo off 命令
要点三
关闭命令回显
使用 @echo off 命令可以在执行批处理文件时,关闭命令的回显,避免在命令行窗口中显示命令本身。
要点一
要点二
简化输出
如果希望在执行批处理文件时,不显示命令的输出,可以将命令放在 @echo off 后面,这样输出将被忽略。
常用搭配
常常与 @pause 命令一起使用,实现在关闭回显的同时,暂停程序运行,以便查看执行结果。
move命令
总结词:删除文件或目录详细描述:使用del命令可以永久删除文件或目录,无法恢复。常用参数/Y:确认删除,不提示确认/F:强制删除,包括隐藏和系统文件/S:删除子目录和子文件/Q:安静模式,不显示确认信息,直接删除示例:del file.txt删除file.txt文件
del命令
05
批处理命令
显示DNS服务器解析信息:`ipconfig /displaydns`
清除DNS解析缓存:`ipconfig /flushdns`
ipconfig命令
diskpart命令
diskpart list volume
显示磁盘分区详细信息
diskpart delete volume=分区名称
删除磁盘分区
diskpart create partition=逻辑驱动器名称 size=分区大小(MB)
创建新的磁盘分区
diskpart set active partition=逻辑驱动器名称
设置磁盘分区为活动
eventvwr命令
eventvwr
显示系统事件日志
显示应用程序日志
显示系统日志
查看特定事件详细信息
eventvwr /Applications
Windows批处理(bat)语法大全
Windows批处理(bat)语法⼤全%~dp0[获取当前路径]%~dp0 “d”为Drive的缩写,即为驱动器,磁盘、“p”为Path缩写,即为路径,⽬录cd %~dp0 :进⼊批处理所在⽬录cd %~dp0bin\ :进⼊批处理所在⽬录的bin⽬录⽰例这个⽰例在win10 x64测试正常::作⽤:以管理员⾝份安装Apached:cd %~dp0binhttpd.exe -k install -n “Apache24”运⾏结果以管理员⾝份运⾏ ⽰例.bat ,执⾏结果如下:C:\Windows\system32>d:D:>cd D:\Server\Apache24\binD:\Server\Apache24\bin>httpd.exe -k install -n “Apache24”我的常⽤命令%cd%[执⾏的路径]当前执⾏的路径,并⾮⽬标⽂件的路径taskkill /f /im notepad.exe [终⽌进程]taskkill /?打开帮助cmd窗⼝中⽂乱码在CMD窗⼝右键/默认值,打开属性选择 “默认代码页为简体中⽂GBK”,获取命令帮助 xxx /?遇到记不清楚的命令,但记得名字,就可以键⼊ 命令名 空格 /?就会有详细的该命令的帮助了,⽐如:ping /? cd /?查看内置命令的帮助信息ver /?cmd /?set /?rem /?if /?echo /?goto /?for /?shift /?call /?其他常⽤的命令type /?find /?findstr /?copy /?#⼀、基础语法1.批处理⽂件是⼀个“.bat”结尾的⽂本⽂件,这个⽂件的每⼀⾏都是⼀条DOS命令。
可以使⽤任何⽂本⽂件编辑⼯具创建和修改。
2.批处理是⼀种简单的程序,可以⽤ if 和 goto 来控制流程,也可以使⽤ for 循环。
3.批处理的编程能⼒远不如C语⾔等编程语⾔,也⼗分不规范。
cmd及批处理命令和帮助大全
Cmd及批处理命令/帮助大全一.命令总汇ASSOC 显示或修改文件扩展名关联。
ATTRIB 显示或更改文件属性。
BREAK 设置或清除扩展式 CTRL+C 检查。
BCDEDIT 设置启动数据库中的属性以控制启动加载。
CACLS 显示或修改文件的访问控制列表(ACL)。
CALL 从另一个批处理程序调用这一个。
CD 显示当前目录的名称或将其更改。
CHCP 显示或设置活动代码页数。
CHDIR 显示当前目录的名称或将其更改。
CHKDSK 检查磁盘并显示状态报告。
CHKNTFS 显示或修改启动时间磁盘检查。
CLS 清除屏幕。
CMD 打开另一个 Windows 命令解释程序窗口。
COLOR 设置默认控制台前景和背景颜色。
COMP 比较两个或两套文件的内容。
COMPACT 显示或更改 NTFS 分区上文件的压缩。
CONVERT 将 FAT 卷转换成 NTFS。
您不能转换当前驱动器。
COPY 将至少一个文件复制到另一个位置。
DATE 显示或设置日期。
DEL 删除至少一个文件。
DIR 显示一个目录中的文件和子目录。
DISKCOMP 比较两个软盘的内容。
DISKCOPY 将一个软盘的内容复制到另一个软盘。
DISKPART 显示或配置磁盘分区属性。
DOSKEY 编辑命令行、调用 Windows 命令并创建宏。
DRIVERQUERY 显示当前设备驱动程序状态和属性。
ECHO 显示消息,或将命令回显打开或关上。
ENDLOCAL 结束批文件中环境更改的本地化。
ERASE 删除一个或多个文件。
EXIT 退出 CMD.EXE 程序(命令解释程序)。
FC 比较两个文件或两个文件集并显示它们之间的不同。
FIND 在一个或多个文件中搜索一个文本字符串。
FINDSTR 在多个文件中搜索字符串。
FOR 为一套文件中的每个文件运行一个指定的命令。
FORMAT 格式化磁盘,以便跟 Windows 使用。
FSUTIL 显示或配置文件系统的属性。
批处理命令大全
批处理命令大全批处理命令大全.txt我自横刀向天笑,笑完我就去睡觉。
你的手机比话费还便宜。
路漫漫其修远兮,不如我们打的吧。
hh.exe ntcmds.chm::/for.htm后台运行,文件名为X.vbsset ws=wscript.createobject("wscript.shell")ws.run "adsf.bat /start",0net config server /autodisconnect:1编辑批处理命令 any.bat内容 net session /delete /y1. gpedit.msc-----组策略2. sndrec32-------录音机3. Nslookup-------IP地址侦测器4. explorer-------打开资源管理器5. logoff---------注销命令6. tsshutdn-------60秒倒计时关机命令7. lusrmgr.msc----本机用户和组8. services.msc---本地服务设置9. oobe/msoobe /a----检查XP是否激活10. notepad--------打开记事本11. cleanmgr-------垃圾整理12. net start messenger----开始信使服务13. compmgmt.msc---计算机管理14. net stop messenger-----停止信使服务15. conf-----------启动netmeeting16. dvdplay--------DVD播放器17. charmap--------启动字符映射表18. diskmgmt.msc---磁盘管理实用程序19. calc-----------启动计算器20. dfrg.msc-------磁盘碎片整理程序21. chkdsk.exe-----Chkdsk磁盘检查22. devmgmt.msc--- 设备管理器23. regsvr32 /u *.dll----停止dll文件运行24. drwtsn32------ 系统医生25. rononce -p ----15秒关机26. dxdiag---------检查DirectX信息27. regedt32-------注册表编辑器28. Msconfig.exe---系统配置实用程序29. rsop.msc-------组策略结果集30. mem.exe--------显示内存使用情况31. regedit.exe----注册表32. winchat--------XP自带局域网聊天33. progman--------程序管理器34. winmsd---------系统信息35. perfmon.msc----计算机性能监测程序36. winver---------检查Windows版本37. sfc /scannow-----扫描错误并复原38. taskmgr-----任务管理器(2000,xp,200339. winver---------检查Windows版本40. wmimgmt.msc----打开windows管理体系结构(WMI)41. wupdmgr--------windows更新程序42. wscript--------windows脚本宿主设置43. write----------写字板44. winmsd---------系统信息45. wiaacmgr-------扫描仪和照相机向导46. winchat--------XP自带局域网聊天47. mem.exe--------显示内存使用情况48. Msconfig.exe---系统配置实用程序49. mplayer2-------简易widnows media player50. mspaint--------画图板51. mstsc----------远程桌面连接52. mplayer2-------媒体播放机53. magnify--------放大镜实用程序54. mmc------------打开控制台55. mobsync--------同步命令56. dxdiag---------检查DirectX信息57. drwtsn32------ 系统医生58. devmgmt.msc--- 设备管理器59. dfrg.msc-------磁盘碎片整理程序60. diskmgmt.msc---磁盘管理实用程序61. dcomcnfg-------打开系统组件服务62. ddeshare-------打开DDE共享设置63. dvdplay--------DVD播放器64. net stop messenger-----停止信使服务65. net start messenger----开始信使服务66. notepad--------打开记事本67. nslookup-------网络管理的工具向导68. ntbackup-------系统备份和还原69. narrator-------屏幕“讲述人”70. ntmsmgr.msc----移动存储管理器71. ntmsoprq.msc---移动存储管理员操作请求72. netstat -an----(TC)命令检查接口73. syncapp--------创建一个公文包74. sysedit--------系统配置编辑器75. sigverif-------文件签名验证程序76. sndrec32-------录音机77. shrpubw--------创建共享文件夹78. secpol.msc-----本地安全策略79. syskey---------系统加密,一旦加密就不能解开,保护windows xp系统的双重密码80. services.msc---本地服务设置81. Sndvol32-------音量控制程序82. sfc.exe--------系统文件检查器83. sfc /scannow---windows文件保护84. tsshutdn-------60秒倒计时关机命令85. tourstart------xp简介(安装完成后出现的漫游xp程序)86. taskmgr--------任务管理器87. eventvwr-------事件查看器88. eudcedit-------造字程序89. explorer-------打开资源管理器90. packager-------对象包装程序91. perfmon.msc----计算机性能监测程序92. progman--------程序管理器93. regedit.exe----注册表94. rsop.msc-------组策略结果集95. regedt32-------注册表编辑器96. rononce -p ----15秒关机97. regsvr32 /u *.dll----停止dll文件运行98. regsvr32 /u zipfldr.dll------取消ZIP支持99. cmd.exe--------CMD命令提示符100. chkdsk.exe-----Chkdsk磁盘检查101. certmgr.msc----证书管理实用程序102. calc-----------启动计算器103. charmap--------启动字符映射表104. cliconfg-------SQL SERVER 客户端网络实用程序105. Clipbrd--------剪贴板查看器106. conf-----------启动netmeeting107. compmgmt.msc---计算机管理108. cleanmgr-------垃圾整理109. ciadv.msc------索引服务程序110. osk------------打开屏幕键盘111. odbcad32-------ODBC数据源管理器112. oobe/msoobe /a----检查XP是否激活113. lusrmgr.msc----本机用户和组114. logoff---------注销命令115. iexpress-------木马捆绑工具,系统自带116. Nslookup-------IP地址侦测器117. fsmgmt.msc-----共享文件夹管理器118. utilman--------辅助工具管理器119. explorer-------打开资源管理器[编辑本段]CMD命令操作详解net use ipipc$ " " /user:" " 建立IPC空链接net use ipipc$ "密码" /user:"用户名" 建立IPC非空链接net use h: ipc$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为H: net use h: ipc$ 登陆后映射对方C:到本地为H:net use ipipc$ /del 删除IPC链接net use h: /del 删除映射对方到本地的为H:的映射net user 用户名密码 /add 建立用户net user guest /active:yes 激活guest用户net user 查看有哪些用户net user 帐户名查看帐户的属性net localgroup administrators 用户名 /add 把“用户”添加到管理员中使其具有管理员权限net start 查看开启了哪些服务net start 服务名开启服务;(如:net start telnet, net start schedule) net stop 服务名停止某服务net time 目标ip 查看对方时间net time 目标ip /set 设置本地计算机时间与“目标IP”主机的时间同步,加上参数/yes可取消确认信息net view 查看本地局域网内开启了哪些共享net view ip 查看对方局域网内开启了哪些共享net config 显示系统网络设置net logoff 断开连接的共享net pause 服务名暂停某服务net send ip "文本信息" 向对方发信息net ver 局域网内正在使用的网络连接类型和信息net share 查看本地开启的共享net share ipc$ 开启ipc$共享net share ipc$ /del 删除ipc$共享net share c$ /del 删除C:共享net user guest 12345 用guest用户登陆后用将密码改为12345net password 密码更改系统登陆密码netstat -a 查看开启了哪些端口,常用netstat -annetstat -n 查看端口的网络连接情况,常用netstat -annetstat -v 查看正在进行的工作netstat -p 协议名例:netstat -p tcq/ip 查看某协议使用情况netstat -s 查看正在使用的所有协议使用情况nbtstat -A ip 对方136到139其中一个端口开了的话,就可查看对方最近登陆的用户名tracert -参数 ip(或计算机名) 跟踪路由(数据包),参数:“-w数字”用于设置超时间隔。
windows7的系统服务优化批处理
windows7的系统服务优化批处理直接通过运行bat文件,对windows 7的系统服务进行优化处理。
直接复制以下的内容。
新建记事本,粘贴。
然后将文件的扩展名改成.bat直接双击文件即可自动优化@echo offecho 服务优化正在处理,请稍等......@echo@pausesc config ALG start= DEMANDsc config AppMgmt start= DEMANDsc config AudioEndpointBuilder start= AUTOsc config Audiosrv start= AUTOsc config BFE start= AUTOsc config BITS start= AUTOsc config Browser start= AUTOsc config CertPropSvc start= DEMANDsc config clr_optimization_v2.0.50727_32 start= DEMAND sc config COMSysApp start= DEMANDsc config CryptSvc start= AUTOsc config DcomLaunch start= AUTOsc config Dhcp start= AUTOsc config Dnscache start= AUTOsc config dot3svc start= DEMANDsc config EapHost start= DEMANDsc config EventSystem start= AUTOsc config fdPHost start= DEMANDsc config FDResPub start= DEMANDsc config FontCache3.0.0.0 start= DEMAND sc config gpsvc start= AUTOsc config hidserv start= DEMANDsc config hkmsvc start= DEMANDsc config idsvc start= DEMANDsc config IKEEXT start= AUTOsc config IPBusEnum start= DEMANDsc config KeyIso start= DEMANDsc config LanmanServer start= AUTOsc config LanmanWorkstation start= AUTO sc config lltdsvc start= DEMANDsc config lmhosts start= AUTOsc config MMCSS start= AUTOsc config MpsSvc start= AUTOsc config msiserver start= DEMANDsc config napagent start= DEMANDsc config Netlogon start= DEMANDsc config Netman start= DEMANDsc config netprofm start= AUTOsc config NetTcpPortSharing start= DISABLED sc config NlaSvc start= AUTOsc config NOD32krn start= AUTOsc config nsi start= AUTOsc config PlugPlay start= AUTOsc config ProfSvc start= AUTOsc config RasAuto start= DEMANDsc config RasMan start= DEMANDsc config RemoteAccess start= DISABLEDsc config RpcLocator start= DEMANDsc config RpcSs start= AUTOsc config SamSs start= AUTOsc config SCardSvr start= DEMANDsc config SCPolicySvc start= DEMAND sc config SENS start= AUTOsc config SharedAccess start= DISABLED sc config ShellHWDetection start= AUTO sc config slsvc start= AUTOsc config SLUINotify start= DEMANDsc config SNMPTRAP start= DEMAND sc config SSDPSRV start= DEMANDsc config SstpSvc start= DEMANDsc config SysMain start= AUTOsc config TapiSrv start= DEMANDsc config TBS start= AUTOsc config Themes start= AUTOsc config THREADORDER start= DEMANDsc config TrustedInstaller start= DEMANDsc config upnphost start= DEMANDsc config UxSms start= AUTOsc config vds start= DEMANDsc config W32Time start= AUTOsc config wcncsvc start= DEMANDsc config WcsPlugInService start= DEMANDsc config WinHttpAutoProxySvc start= DEMAND sc config Winmgmt start= AUTOsc config Wlansvc start= DEMANDsc config wmiApSrv start= DEMANDsc config WMPNetworkSvc start= DEMANDsc config wscsvc start= AUTOsc config wuauserv start= AUTO sc config wudfsvc start= DEMAND @pauseecho.echo.&echo 优化完成!任意键退出。
Windows批Windows批处理(cmdbat)
Windows批Windows批处理(cmdbat)常见问题:1.如果你⾃⼰编写的.bat⽂件,双击打开,出现闪退2.批处理.bat ⽂件中输出中⽂乱码解决⽅法在⽂章末尾!前⾔批处理⽂件(batch file)包含⼀系列 DOS命令,通常⽤于⾃动执⾏重复性任务。
⽤户只需双击批处理⽂件便可执⾏任务,⽽⽆需重复输⼊相同指令。
编写批处理⽂件⾮常简单,但难点在于确保⼀切按顺序执⾏。
编写严谨的批处理⽂件可以极⼤程度地节省时间,在应对重复性⼯作时尤其有效在Windows中善⽤批处理可以简化很多重复⼯作什么是批处理?批处理(Batch),也称为批处理脚本。
顾名思义,批处理就是对某对象进⾏批量的处理。
批处理⽂件的扩展名为bat⽬前⽐较常见的批处理包含两类:DOS批处理和PS批处理。
PS批处理是基于强⼤的图⽚编辑软件Photoshop的,⽤来批量处理图⽚的脚本;⽽DOS批处理则是基于DOS命令的,⽤来⾃动地批量地执⾏DOS命令以实现特定操作的脚本。
这⾥要讲的就是DOS批处理批处理是⼀种简化的脚本语⾔,它应⽤于DOS和Windows系统中,它是由DOS或者Windows系统内嵌的命令解释器(通常是或者CMD.EXE)解释运⾏批处理类似于Unix中的Shell脚本。
批处理⽂件具有.bat或者.cmd的扩展名,其最简单的例⼦,是逐⾏书写在命令⾏中会⽤到的各种命令。
更复杂的情况,需要使⽤if,for,goto等命令控制程序的运⾏过程,如同C,Basic等中⾼级语⾔⼀样。
如果需要实现更复杂的应⽤,利⽤外部程序是必要的,这包括系统本⾝提供的外部命令和第三⽅提供的⼯具或者软件怎么创建批处理⽂件?批处理⽂件,或称为批处理程序,是由⼀条条的DOS命令组成的普通⽂本⽂件,可以⽤记事本直接编辑或⽤DOS命令创建,也可以⽤DOS下的⽂本编辑器Edit.exe来编辑。
在“命令提⽰”下键⼊批处理⽂件的名称,或者双击该批处理⽂件,系统就会调⽤Cmd.exe运⾏该批处理程序⼀般情况下,每条命令占据⼀⾏当然也可以将多条命令⽤特定符号(如:&、&&、|、||等)分隔后写⼊同⼀⾏中还有的情况就是像if、for等较⾼级的命令则要占据⼏⾏甚⾄⼏⼗⼏百⾏的空间。
windows批量处理命令写法
windows批量处理命令写法在Windows中,你可以使用批处理脚本(以.bat为扩展名)来进行批量处理。
以下是一些常用的Windows批处理命令和写法:1. 循环结构:- for命令:用于循环处理文件或目录。
```batchfor %%i in (*.txt) do (echo %%iREM 其他处理命令)```这个例子遍历当前目录下的所有txt文件,并对每个文件执行处理命令。
- for /f命令:从文件内容中逐行读取数据。
```batchfor /f "tokens=1,2 delims=," %%a in (input.txt) do (echo %%a - %%bREM 其他处理命令)```这个例子从`input.txt`文件中读取以逗号分隔的两列数据,并对每一行执行处理命令。
2. 条件语句:- if命令:用于条件判断。
```batchif exist file.txt (echo 文件存在) else (echo 文件不存在)```这个例子检查文件`file.txt`是否存在,并根据结果执行不同的处理命令。
3. 变量和参数:- set命令:用于设置和操作环境变量。
```batchset VAR=valueecho %VAR%```这个例子设置一个变量VAR的值,并在后续代码中使用。
- %1, %2, ... %n:用于获取脚本参数。
```batchecho 第一个参数:%1echo 第二个参数:%2```这个例子显示脚本接收到的第一个和第二个参数。
4. 文件和文件夹操作:- copy命令:用于复制文件。
```batchcopy source.txt destination.txt```- move命令:用于移动文件。
```batchmove file.txt new\folder\```- del命令:用于删除文件。
```batchdel file.txt```这只是一些基础的示例,实际情况可能会更复杂。
windows批处理学习(for和字符串)---03
windows批处理学习(for和字符串)---03【1】for命令简介 先把for循环与for命令类⽐⼀下,这样学习理解快。
for 循环语句,⼀般格式如下:1 for (表达式1;表达式2;表达式3)2 {3 循环体;4 } 1. 表达式1 ⼀般为初始状态赋值表达式,给控制变量赋初值。
2. 表达式2 ⼀般为关系表达式或逻辑表达式,为循环控制条件。
3. 表达式3 ⼀般为每次执⾏循环体后向控制变量重新赋值的表达式(给控制变量增量或减量)。
4. 语句:循环体,⼀般为复合语句(即可能需要执⾏多条语句)。
举个实例:1 for (int i=0; i < 100; ++i)2 {3 cout << i << endl;4 } for 命令,⼀般格式如下: 在cmd窗⼝中使⽤格式:FOR %variable IN (set) DO command [command-parameters] 在批处理脚本中使⽤格式:FOR %%variable IN (set) DO command [command-parameters] 1. 在cmd窗⼝中使⽤,变量名必须⽤单%引⽤(即:%variable);在批处理脚本中使⽤,变量名必须⽤双%引⽤(即:%%variable)。
2. for、in和do是for命令的三个关键字,缺⼀不可。
3. 关键字in之后,do之前的括号不能省略。
举个实例:新建⼀个⽂本⽂件,命名为fordemo,修改⽂件类型为bat,⽤Notepad++打开编辑内容为:1 @echo off2 for %%i in (1 234 5) do @echo %%i3 pause>nul 执⾏结果: 嗯哼,原来for命令就这么简单?嗨,同学,不要浮躁,保持冷静,更要理智。
下⾯,且看对上例语句的分析: 从命令组成结构由左向右剖析,除过关键字,依次分别为: 1. 变量名为i,i太简单,作为变量名不具备见名知意的特点。
Window系统的批处理变量大全
Window系统的批处理变量⼤全%ALLUSERSPROFILE% 本地返回“所有⽤户”配置⽂件的位置。
%APPDATA% 本地返回默认情况下应⽤程序存储数据的位置。
%CD% 本地返回当前⽬录字符串。
%CMDCMDLINE% 本地返回⽤来启动当前的 Cmd.exe 的准确命令⾏。
%CMDEXTVERSION% 系统返回当前的“命令处理程序扩展”的版本号。
%COMPUTERNAME% 系统返回计算机的名称。
%COMSPEC% 系统返回命令⾏解释器可执⾏程序的准确路径。
%DATE% 系统返回当前⽇期。
%ERRORLEVEL% 系统返回上⼀条命令的错误代码。
通常⽤⾮零值表⽰错误。
%HOMEDRIVE% = 当前启动的系统的所在分区 (⼀般为C:\ )%HOMEPATH% = 当前⽤户环境变量(⼀般为C:\Documents and Settings\⽤户名)%HOMESHARE% 系统返回⽤户的共享主⽬录的⽹络路径。
基于主⽬录值⽽设置。
⽤户主⽬录是在“本地⽤户和组”中指定的。
%LOGONSERVER% 本地返回验证当前登录会话的域控制器的名称。
%NUMBER_OF_PROCESSORS% 系统指定安装在计算机上的处理器的数⽬。
%OS% 系统返回操作系统名称。
Windows 2000 显⽰其操作系统为 Windows_NT。
%PATH% 系统指定可执⾏⽂件的搜索路径。
%PATHEXT% 系统返回操作系统认为可执⾏的⽂件扩展名的列表。
%PROCESSOR_ARCHITECTURE% 系统返回处理器的芯⽚体系结构。
值:x86 或 IA64 基于Itanium%PROCESSOR_IDENTFIER% 系统返回处理器说明。
%PROCESSOR_LEVEL% 系统返回计算机上安装的处理器的型号。
%PROCESSOR_REVISION% 系统返回处理器的版本号。
%programfiles% = 程序安装⽬录(⼀般为C:\Program Files)%PROMPT% 本地返回当前解释程序的命令提⽰符设置。
批处理命令大全及用法
批处理命令大全及用法
批处理(Windows Batch)是一种实现脚本编程的工具,可以使用文本文件中的一系列命令顺序运行,可用于随时自动执行一系列命令。
它可以将一些繁琐的任务流程上的步骤进行自动化,以减少时间和精力。
批处理命令有很多,根据具体用途有不同的命令,这里只介绍几种常用的批处理命令。
1、cls命令:它可以清除屏幕上的文本信息。
2、cd命令:它接受一个路径参数,用于改变当前的工作路径。
3、copy命令:它可以用来拷贝文件。
4、del命令:它可以用于删除文件和文件夹。
5、md命令:它用于创建子目录。
6、echo命令:它用于显示字符串信息。
7、date命令:它可以显示或修改当前系统日期。
8、exit命令:它可以退出当前批处理系统。
以上只是Windows批处理命令中常用的一部分,Windows批处理命令用法也有很多,针对不同的任务,有不同的命令用法,需要灵活使用,才可以达到自动化任务处理的目的。
windows批处理命令详解及脚本实例[精选]doc
批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT。
第一部分:批处理内部命令1、REMREM 是个注释命令一般是用来给程序加上注解的,该命令后的内容在程序执行的时候将不会被显示和执行。
例:REM 你现在看到的就是注解,这一句将不会被执行。
在以后的例子中解释的内容都REM 会放在REM后面。
请大家注意。
2、ECHOECHO 是一个回显命令主要参数有OFF和ON,一般用ECHO message来显示一个特定的消息。
例:Echo offRem 以上代表关闭回显即不显示所执行的命令Echo 这个就是消息。
Rem 以上代表显示"这就是消息"这列字符执行结果:C:\>ECHO.BAT这个就是消息。
3、GOTOGOTO 即为跳转的意思。
在批处理中允许以":XXX"来构建一个标号然后用GOTO :标号直接来执行标号后的命令。
例:LABELREM 上面就是名为LABEL的标号。
DIR C:\DIR D:\GOTO LABELREM 以上程序跳转标号LABEL处继续执行。
4、CALLCALL 命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后再继续执行原来的批处理。
例:批处理2.BAT内容如下:ECHO 这就是2的内容批处理1.BAT内容如下:ECHO 这是1的内容CALL 2.BATECHO 1和2的内容全部显示完成执行结果如下:C:\>1.BAT这是1的内容这就是2的内容1和2的内容全部显示完成5、PAUSEPAUSE 停止系统命令的执行并显示下面的内容。
例:C:\> PAUSE请按任意键继续. . .6、IFIF 条件判断语句,语法格式如下:IF [NOT] ERRORLEVEL number commandIF [NOT] string1==string2 commandIF [NOT] EXIST filename command说明:[NOT] 将返回的结果取反值即"如果没有"的意思。
windows操作系统变量名-批处理DOS系统变量名大全
文件是文本文档,方便大家放到手机上看等公交坐火车无聊的时候掏出手机就可以看喽%ALL USERS PROFI LE% :列出所有用户Pro file文件位置。
%APPD ATA%: 列出应用程序数据的默认存放位置。
%CD%: 列出当前目录。
%CLI ENTNA ME% :列出联接到终端服务会话时客户端的NE TBIOS名。
%C MDCMD LINE% : 列出启动当前cmd.e xe所使用的命令行。
%CMD EXTVE RSION% : 命令出当前命令处理程序扩展版本号。
%C ommon Progr amFil es% :列出了常用文件的文件夹路径。
%CO MPUTE RNAME% : 列出了计算机名。
%COMS PEC%: 列出了可执行命令外壳(命令处理程序)的路径。
%DAT E% :列出当前日期。
%ERROR LEVEL% : 列出了最近使用的命令的错误代码。
%HO MEDRI VE% :列出与用户主目录所在的驱动器盘符。
%HOME PATH% : 列出用户主目录的完整路径。
%H OMESH ARE%: 列出用户共享主目录的网络路径。
%LOGON SEVER% : 列出有效的当前登录会话的域名控制器名。
%NUMB ER_OF_PROC ESSOR S% :列出了计算机安装的处理器数。
%OS% : 列出操作系统的名字。
(Windo ws XP和 Wi ndows 2000列为W indow s_NT.) %Pa th% :列出了可执行文件的搜索路径。
%PA THEXT% : 列出操作系统认为可被执行的文件扩展名。
%PRO CESSO R_ARC HITEC TURE% : 列出了处理器的芯片架构。
windows应用场景下批量删除指定文件的批处理脚本
windows应用场景下批量删除指定文件的批处理脚本在Windows应用场景下,批量删除指定文件是一项常见的任务。
借助批处理脚本,我们可以轻松地完成这一操作。
本文将介绍如何编写一个批处理脚本来实现批量删除指定文件的功能。
首先,我们需要创建一个文本文件来编写批处理脚本。
在桌面或任何方便的位置右键单击,选择“新建” -> “文本文档”。
将新建的文本文档重命名为"DeleteFiles.bat"(扩展名必须是.bat)。
然后右键单击该文件,选择“编辑”来打开它。
接下来,我们需要了解一些基本的批处理命令。
批处理脚本中的每一行都是一个命令,可以通过批处理命令来实现不同的功能。
下面是几个常用的批处理命令:1. `@echo off`:用于关闭在脚本执行过程中显示命令行窗口的功能。
2. `cd`:用于改变当前目录。
例如,`cd /d C:\Folder` 将当前目录更改为 C 盘下的 Folder 文件夹。
3. `del`:用于删除指定的文件。
例如,`del *.txt` 将删除当前目录下所有的文本文件。
现在,让我们开始编写批处理脚本以实现批量删除指定文件的功能。
以下是一个示例脚本,该脚本将删除指定目录下的所有 .txt 文件:```@echo offcd /d C:\Folderdel *.txt```请确保将上述示例中的 "C:\Folder" 替换为您要操作的实际文件夹路径。
保存并关闭文件。
现在,您可以双击运行该批处理脚本来删除指定目录下的所有 .txt 文件。
除了删除指定类型的文件,我们还可以使用通配符来删除符合特定条件的文件。
例如,如果您想删除所有以“temp”开头的文件,您可以使用如下命令:```@echo offcd /d C:\Folderdel temp*```上述示例中的 "temp*" 表示删除以 "temp" 开头的所有文件。
使用bat批处理指令清理windows10系统垃圾文件教程-bat批处理指令大全
第2页共4页
本文格式为 Word 版,下载可任意编辑,页眉双击删除即可。
del /f /s /q "%userprofile%\local settings\temp\*.*"
echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
echo 删除访问记录(开始菜单中的文档里面的东西)
del %windir%\2950800.txt /f /q
echo 删除回收站的无用文件
echo 删除补丁安装记录内容(下面的 del /f /s
del /f /s /q %systemdrive%\recycled\*.*
/q %systemdrive%\*.log 已经包含删除此类文件)
echo 删除系统目录下备份文件
☆★☆★☆★
del /f /s /q "%userprofile%\recent\*.*"
echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
echo
☆★☆★☆★
echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
echo.
☆★☆★☆★
++++++++++++++++++++++++++++++++++++++++++++++
批处理常用命令
批处理常用命令什么是批处理?批处理是一种在Windows操作系统中执行一系列命令的技术。
通过批处理,可以自动化执行多个命令,从而提高工作效率。
批处理文件通常以.bat或.cmd为文件后缀。
批处理常用命令1. echoecho命令用于在屏幕上显示文本。
可以使用以下语法:echo [文本]例如,输入以下命令:echo Hello, World!屏幕上将显示Hello, World!2. pausepause命令用于暂停批处理的执行,直到用户按下任意键。
它通常用于确保在执行下一步之前用户已经阅读了某些信息。
pause3. ifif命令用于根据条件执行不同的操作。
可以使用以下语法:if [条件] ([操作1]) else ([操作2])例如,下面的示例检查变量x是否等于10,并根据结果执行不同的操作:set x=10if %x%==10 (echo x is equal to 10.) else (echo x is not equal to 10.)4. forfor命令用于循环执行一系列操作。
可以使用以下语法:for %%变量 IN (列表) DO ([操作])例如,下面的示例将输出从1到5的数字:for %%i in (1 2 3 4 5) do (echo %%i)5. setset命令用于设置或显示环境变量。
可以使用以下语法:set [变量名]=[值]例如,输入以下命令将设置名为MESSAGE的环境变量:set MESSAGE=Hello, World!6. callcall命令用于调用一个批处理文件中的另一个批处理文件。
可以使用以下语法:call [批处理文件路径]例如,下面的示例调用名为example.bat的批处理文件:call example.bat7. startstart命令用于启动一个程序或打开一个文档。
可以使用以下语法:start [程序路径/文档路径]例如,输入以下命令将启动记事本应用程序并打开一个文档:start notepad.exe C:\example.txt8. deldel命令用于删除文件。
批处理命令大全
批处理命令大全1 echo 和@回显控制命令@ #关闭单行回显echo off #从下一行开始关闭回显@echo off #从本行开始关闭回显。
一般批处理第一行都是这个echo on #从下一行开始打开回显echo #显示当前是echo off 状态还是echo on 状态echo. #输出一个"回车换行",一般就是指空白行echo hello world #输出hello world"关闭回显"是指运行批处理文件时,不显示文件里的每条命令,只显示运行结果批处理开始和结束时,系统都会自动打开回显2 errorlevel程序返回码echo %errorlevel%每个命令运行结束,可以用这个命令行格式查看返回码用于判断刚才的命令是否执行成功默认值为0,一般命令执行出错会设errorlevel 为13 dir显示目录中的文件和子目录列表dir #显示当前目录中的文件和子目录dir /a #显示当前目录中的文件和子目录,包括隐藏文件和系统文件dir c: /a:d #显示C 盘当前目录中的目录dir c:\ /a:-d #显示C 盘根目录中的文件dir d:\mp3 /b/p #逐屏显示d:\mp3 目录里的文件,只显示文件名,不显示时间和大小dir *.exe /s显示当前目录和子目录里所有的.exe文件其中* 是通配符,代表所有的文件名,还一个通配符? 代表一个任意字母或汉字如c*.* 代表以 c 开头的所有文件.exe 代表所有文件名是一个字母的.exe文件如果指定的目录或文件不存在,将返回errorlevel 为1每个文件夹的dir 输出都会有2个子目录. 和... 代表当前目录.. 代表当前目录的上级目录dir . #显示当前目录中的文件和子目录dir .. #显示当前目录的上级目录中的文件和子目录其它参数可参考dir /?4 cd更改当前目录cd mp3 #进入当前目录中的mp3 目录cd .. #进入当前目录中的上级目录cd\ #进入根目录cd #显示当前目录cd /d d:\mp3 #可以同时更改盘符和目录cd\"Documents and Settings"\All users文件名带空格,可以不加引号建议加上引号,因为有的时候不加引号会运行出错,如登录脚本如果更改到的目录不存在,则出错返回errorlevel=15 md创建目录md abc #在当前目录里建立子目录abcmd d:\a\b\c #如果d:\a 不存在,将会自动创建6 rd删除目录rd abc #删除当前目录里的abc 子目录,要求为空目录rd /s/q d:\temp #删除d:\temp 文件夹及其子文件夹和文件,不需要按Y 确认7 del删除文件del d:\test.txt #删除指定文件,不能是隐藏、系统、只读文件del *.*删除当前目录里的所有文件,不包括隐藏、系统、只读文件,要求按Y 确认del /q/a/f d:\temp\*.*删除d:\temp 文件夹里面的所有文件,包括隐藏、只读、系统文件,不包括子目录del /q/a/f/s d:\temp\*.*删除d:\temp 及子文件夹里面的所有文件,包括隐藏、只读、系统文件,不包括子目录8 ren文件重命名ren 1.txt 2.bak #把1.txt 更名为2.bakren *.txt *.ini #把当前目录里所有.txt文件改成.ini文件ren d:\temp tmp #支持对文件夹的重命名9 cls清屏10 type显示文件内容type c:\boot.ini #显示指定文件的内容,程序文件一般会显示乱码type *.txt #显示当前目录里所有.txt文件的内容11 copy拷贝文件copy c:\test.txt d:\复制c:\test.txt 文件到d:\copy c:\test.txt d:\test.bak复制c:\test.txt 文件到d:\ ,并重命名为test.bakcopy c:\*.*复制c:\ 所有文件到当前目录,不包括隐藏文件和系统文件不指定目标路径,则默认目标路径为当前目录copy con test.txt从屏幕上等待输入,按Ctrl+Z 结束输入,输入内容存为test.txt文件con代表屏幕,prn代表打印机,nul代表空设备copy 1.txt + 2.txt 3.txt合并1.txt 和 2.txt 的内容,保存为 3.txt 文件如果不指定3.txt ,则保存到 1.txtcopy test.txt +复制文件到自己,实际上是修改了文件日期12 title设置cmd窗口的标题title 新标题#可以看到cmd窗口的标题栏变了13 ver显示系统版本14 label 和vol设置卷标vol #显示卷标label #显示卷标,同时提示输入新卷标label c:system #设置C盘的卷标为system15 pause暂停命令运行该命令时,将显示下面的消息:请按任意键继续. . .一般用于看清楚屏幕上显示的内容16 rem 和::注释命令注释行不执行操作17 date 和time日期和时间date #显示当前日期,并提示输入新日期,按"回车"略过输入date/t #只显示当前日期,不提示输入新日期time #显示当前时间,并提示输入新时间,按"回车"略过输入time/t #只显示当前时间,不提示输入新时间18 goto 和:跳转命令:label #行首为:表示该行是标签行,标签行不执行操作goto label #跳转到指定的标签那一行19 find (外部命令)查找命令find "abc" c:\test.txt在c:\test.txt 文件里查找含abc 字符串的行如果找不到,将设errorlevel 返回码为1find /i "abc" c:\test.txt查找含abc 的行,忽略大小写find /c "abc" c:\test.txt显示含abc 的行的行数20 more (外部命令)逐屏显示more c:\test.txt #逐屏显示c:\test.txt 的文件内容21 tree显示目录结构tree d:\ #显示D盘的文件目录结构22 &顺序执行多条命令,而不管命令是否执行成功c: & cd\ & dir /w相当于把下面3行命令写到1行去了c:cd\dir /w23 &&顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令f: && cd\ && dir >c:\test.txt注意如果f盘不存在,那么后面2条命令将不会执行find "ok" c:\test.txt && echo 成功如果找到了"ok"字样,就显示"成功",找不到就不显示24 ||顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令f: || e:如果有f盘就不进入e盘find "ok" c:\test.txt || echo 不成功如果找不到"ok"字样,就显示"不成功",找到了就不显示25 |管道命令前一个命令的执行结果输出到后一个命令dir *.* /s/a | find /c ".exe"管道命令表示先执行dir 命令,对其输出的结果执行后面的find 命令该命令行结果:输出当前文件夹及所有子文件夹里的.exe文件的个数type c:\test.txt|more这个和more c:\test.txt 的效果是一样的26 > 和>>输出重定向命令> 清除文件中原有的内容后再写入>> 追加内容到文件末尾,而不会清除原有的内容主要将本来显示在屏幕上的内容输出到指定文件中指定文件如果不存在,则自动生成该文件echo hello world>c:\test.txt生成c:\test.txt文件,内容为hello world这个格式在批处理文件里用得很多,可以生成.reg .bat .vbs 等临时文件type c:\test.txt >prn屏幕上不显示文件内容,转向输出到打印机echo hello world>con在屏幕上显示hello world,实际上所有输出都是默认>con 的copy c:\test.txt f: >nul拷贝文件,并且不显示"文件复制成功"的提示信息,但如果f盘不存在,还是会显示出错信息copy c:\test.txt f: >nul 2>nul不显示"文件复制成功"的提示信息,并且f盘不存在的话,也不显示错误提示信息echo ^^W ^> ^W>c:\test.txt生成的文件内容为^W > W^ 和> 是控制命令,要把它们输出到文件,必须在前面加个^ 符号27 <从文件中获得输入信息,而不是从屏幕上一般用于date time label 等需要等待输入的命令@echo offecho 2005-05-01>temp.txtdate <temp.txtdel temp.txt这样就可以不等待输入直接修改当前日期28 %0 %1 %2 %3 %4 %5 %6 %7 %8 %9 %*命令行传递给批处理的参数%0 批处理文件本身%1 第一个参数%9 第九个参数%* 从第一个参数开始的所有参数在C盘根目录新建test.bat,内容如下:@echo offecho %0echo %1echo %2echo %*运行cmd,输入c:\test.bat "/a" /b /c /d可以看出每个参数的含意修改test.bat内容如下@echo offecho %1echo %~1echo %0echo %~f0echo %~d0echo %~p0echo %~n0echo %~x0echo %~s0echo %~a0echo %~t0echo %~z0再运行cmd,输入c:\test.bat "/a" /b /c /d可以参照call/? 或for/? 看出每个参数的含意注意这里可以对文件进行日期比较和大小比较echo load "%%1" "%%2">c:\test.txt生成的文件内容为load "%1" "%2"批处理文件里,用这个格式把命令行参数输出到文件29 if判断命令if "%1"=="/a" echo 第一个参数是/aif /i "%1" equ "/a" echo 第一个参数是/a/i 表示不区分大小写,equ 和== 是一样的,其它运算符参见if/? if exist c:\test.bat echo 存在c:\test.bat文件if not exist c:\windows (echo 不存在c:\windows文件夹rem 有多条命令可用小括号括起来,称为"复合语句"rem 行前的空格是为了看起来条理清楚)if exist c:\test.bat (echo 存在c:\test.bat) else (echo 不存在c:\test.batrem else表示"否则",判断结果为假时执行其后的命令)30 setlocal 和endlocal设置"命令扩展名"和"延缓环境变量扩充"SETLOCAL ENABLEEXTENSIONS #启用"命令扩展名"SETLOCAL DISABLEEXTENSIONS #停用"命令扩展名"SETLOCAL ENABLEDELAYEDEXPANSION #启用"延缓环境变量扩充" SETLOCAL DISABLEDELAYEDEXPANSION #停用"延缓环境变量扩充" ENDLOCAL #恢复到使用SETLOCAL语句以前的状态"命令扩展名"默认为启用"延缓环境变量扩充"默认为停用批处理结束系统会自动恢复默认值可以修改注册表以禁用"命令扩展名",详见cmd /? 。
WINDOWS命令大全-批处理命令集
批处理命令集常用的几个命令echo、@、call、pause、rem是批处理文件最常用的几个命令,我们就从他们开始学起。
ECHO表示显示此命令后的字符。
echo off 表示在此语句后所有运行的命令都不显示命令行本身。
@ 与echo off相象,但它是加在其它命令行的最前面,表示运行时不显示命令行本身。
CALL表示调用另一条批处理文件(如果直接调用别的批处理文件,执行完那条文件后将无法执行当前文件后续命令)PAUSE运行此句会暂停,显示Press any key to continue... 等待用户按任意键后继续。
REM表示此命令后的字符为解释行,不执行,只是给自己今后查找用的。
| 管道命令< 或> 重定向命令。
“<”,例如:tlntadmn < test.txt 指把test.txt的内容赋值给tlntadmn命令@表示执行@后面的命令,但不会显示出来(后台执行);例:@dir c:\winnt >> d:\log.txt 意思是:后台执行dir,并把结果存在d:\log.txt中>与>>的区别">"指:覆盖;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二个命令分别执行二次比较看:用>>的则是把二次的结果都保存了,而用:>则只有一次的结果,是因为第二次的结果把第一次的覆盖了。
非常用命令ASSOC作用:显示或修改文件扩展名关联ASSOC [.ext[=[fileType]]].ext 指定跟文件类型关联的文件扩展名fileType 指定跟文件扩展名关联的文件类型键入ASSOC 而不带参数,显示当前文件关联。
如果只用文件扩展名调用ASSOC,则显示那个文件扩展名的当前文件关联。
windows应用场景下批量修改文件属性的批处理脚本
windows应用场景下批量修改文件属性的批处理脚本在Windows应用场景下,经常会遇到需要批量修改文件属性的情况。
为了提高效率,我们可以使用批处理脚本来实现这一目标。
批处理脚本是一系列命令的集合,我们可以通过编写一段简单的代码来实现批量修改文件属性的功能。
要使用批处理脚本修改文件属性,首先我们需要了解一些基本的命令和参数。
在Windows系统中,我们可以使用"attrib"命令来修改文件的属性。
下面是一些常用的attrib命令参数:- "+属性":添加指定的属性;- "-属性":移除指定的属性;- "r":只读属性;- "h":隐藏属性;- "s":系统属性;- "a":存档属性。
在编写批处理脚本之前,我们需要先详细确认我们想要修改的文件属性。
例如,如果我们想要将一个文件夹下的所有文件属性修改为只读,我们需要明确这一要求。
首先,我们创建一个新的文本文件,并将其保存为批处理脚本的扩展名(.bat)。
然后,我们打开这个文件并输入以下代码:```@echo offattrib +r "文件路径\*.*" /s```在这段代码中,我们使用了以下命令和参数:- "@echo off":这个命令会关闭脚本的输出,以确保在运行脚本时不会看到额外的信息;- "attrib":这个命令是用来修改文件属性的;- "+r":这个参数表示添加只读属性;- "文件路径\*.*":这个路径需要替换为你实际想要修改属性的文件夹路径;- "/s":这个参数表示在子文件夹中也递归地修改属性。
在保存和关闭批处理脚本文件之后,我们就可以双击运行它了。
脚本会自动扫描指定文件夹下的所有文件,并将它们的属性修改为只读。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Windows 批处理大全(附各种实例)批处理文件是无格式的文本文件,它包含一条或多条命令。
它的文件扩展名为 .bat 或 .cmd。
在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。
使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。
当然我们的这个版本的主要内容是介绍批处理在入侵中一些实际运用,例如我们后面要提到的用批处理文件来给系统打补丁、批量植入后门程序等。
下面就开始我们批处理学习之旅吧。
一.简单批处理内部命令简介1.Echo 命令打开回显或关闭请求回显功能,或显示消息。
如果没有任何参数,echo 命令将显示当前回显设置。
语法echo [{on|off}] [message]Sample:@echo off / echo hello world在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。
2.@ 命令表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。
Sample:@echo off@echo Now initializing the program,please wait a minite...@format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,可喜的是微软留了个autoset这个参数给我们,效果和/y是一样的。
)3.Goto 命令指定跳转到标签,找到标签后,程序将处理从下一行开始的命令。
语法:goto label (label是参数,指定所要转向的批处理程序中的行。
)Sample:if {%1}=={} goto nop arm sif {%2}=={} goto nop arm s(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。
)@Rem check parameters if null show usage:nop arm secho Usage: monitor.bat ServerIP PortNumbergoto end标签的名字可以随便起,但是最好是有意义的字母啦,字母前加个:用来表示这个字母是标签,goto命令就是根据这个:来寻找下一步跳到到那里。
最好有一些说明这样你别人看起来才会理解你的意图啊。
4.Rem 命令注释命令,在C语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。
Rem MessageSample:@Rem Here is the descr1ption.5.Pause 命令运行 Pause 命令时,将显示下面的消息:Press any key to continue . . .Sample:@echo off:begincopy a:*.* d:backecho Please put a new disk into driver Apausegoto begin在这个例子中,驱动器 A 中磁盘上的所有文件均复制到d:back中。
显示的注释提示您将另一张磁盘放入驱动器 A 时,pause 命令会使程序挂起,以便您更换磁盘,然后按我饧 绦 怼?6.Call 命令从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。
call 命令接受用作调用目标的标签。
如果在脚本或批处理文件外使用 Call,它将不会在命令行起作用。
语法call [Drive:][Path] FileName [BatchParameters] [:label [arguments] 参数[Drive:}[Path] FileName指定要调用的批处理程序的位置和名称。
filename 参数必须具有 .bat 或 .cmd 扩展名。
7.start 命令调用外部程序,所有的DOS命令和命令行程序都可以由start命令来调用。
入侵常用参数:MIN 开始时窗口最小化SEPARATE 在分开的空间内开始 16 位Windows程序HIGH 在 HIGH 优先级类别开始应用程序REALTIME 在 REALTIME 优先级类别开始应用程序WAIT 启动应用程序并等候它结束parameters 这些为传送到命令/程序的参数执行的应用程序是 32-位 GUI 应用程序时,CMD.EXE 不等应用程序终止就返回命令提示。
如果在命令脚本内执行,该新行为则不会发生。
8.choice 命令choice 使用此命令可以让用户输入一个字符,从而运行不同的命令。
使用时应该加/c:参数,c:后应写提示可输入的字符,之间无空格。
它的返回码为1234……如: choice /c:dme defrag,mem,end将显示defrag,mem,end[D,M,E]?Sample:Sample.bat的内容如下:@echo offchoice /c:dme defrag,mem,endif errorlevel 3 goto defrag (应先判断数值最高的错误码)if errorlevel 2 goto memif errotlevel 1 goto end:defragc:dosdefraggoto end:memmemgoto end:endecho good bye此文件运行后,将显示 defrag,mem,end[D,M,E]? 用户可选择d m e ,然后if语句将作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以goto end将程序跳到end标号处,然后程序将显示good bye,文件结束。
9.If 命令if 表示将判断是否符合规定的条件,从而决定执行不同的命令。
有三种格式: 1、if "参数" == "字符串" 待执行的命令参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。
(注意是两个等号)如if "%1"=="a" format a:if {%1}=={} goto nop arm sif {%2}=={} goto nop arm s2、if exist 文件名待执行的命令如果有指定的文件,则条件成立,运行命令,否则运行下一句。
如if exist config.sys edit config.sys3、if errorlevel / if not errorlevel 数字待执行的命令如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。
如if errorlevel 2 goto x2DOS程序运行时都会返回一个数字给DOS,称为错误码errorlevel或称返回码,常见的返回码为0、1。
10.for 命令for 命令是一个比较复杂的命令,主要用于参数在指定的范围内循环执行命令。
在批处理文件中使用 FOR 命令时,指定变量请使用 %%variablefor {%variable|%%variable} in (set) do command [ CommandLineOptions]%variable 指定一个单一字母可替换的参数。
(set) 指定一个或一组文件。
可以使用通配符。
command 指定对每个文件执行的命令。
command-parameters 为特定命令指定参数或命令行开关。
在批处理文件中使用 FOR 命令时,指定变量请使用 %%variable而不要用 %variable。
变量名称是区分大小写的,所以 %i 不同于 %I如果命令扩展名被启用,下列额外的 FOR 命令格式会受到支持:FOR /D %variable IN (set) DO command [command-parameters]如果集中包含通配符,则指定与目录名匹配,而不与文件名匹配。
FOR /R [drive:]path] %variable IN (set) DO command [command-检查以 [drive:]path 为根的目录树,指向每个目录中的FOR 语句。
如果在 /R 后没有指定目录,则使用当前目录。
如果集仅为一个单点(.)字符,则枚举该目录树。
FOR /L %variable IN (start,step,end) DO command [command-para该集表示以增量形式从开始到结束的一个数字序列。
因此,(1,1,5) 将产生序列 1 2 3 4 5,(5,-1,1) 将产生序列 (5 4 3 2 1)。
FOR /F ["options"] %variable IN (file-set) DO commandFOR /F ["options"] %variable IN ("string") DO commandFOR /F ["options"] %variable IN ('command') DO command或者,如果有 usebackq 选项:FOR /F ["options"] %variable IN (file-set) DO commandFOR /F ["options"] %variable IN ("string") DO commandFOR /F ["options"] %variable IN ('command') DO commandfilenameset 为一个或多个文件名。
继续到 filenameset 中的下一个文件之前,每份文件都已被打开、读取并经过处理。
处理包括读取文件,将其分成一行行的文字,然后将每行解析成零或更多的符号。
然后用已找到的符号字符串变量值调用 For 循环。
以默认方式,/F 通过每个文件的每一行中分开的第一个空白符号。
跳过空白行。
您可通过指定可选"options"参数替代默认解析操作。
这个带引号的字符串包括一个或多个指定不同解析选项的关键字。
这些关键字为:eol=c - 指一个行注释字符的结尾(就一个)skip=n - 指在文件开始时忽略的行数。
delims=xxx - 指分隔符集。
这个替换了空格和跳格键的默认分隔符集。
tokens=x,y,m-n - 指每行的哪一个符号被传递到每个迭代的 for 本身。