dos批处理命令小程序

合集下载

Dos命令进阶(三)---批处理(上)

Dos命令进阶(三)---批处理(上)

Dos命令进阶(三)---批处理(上)批处理脚本讲解思路一. 批处理介绍1、批处理的概述:批处理,也称为批处理脚本,英文译为BATCH,批处理文件后缀BAT就取的前三个字母。

它的构成没有固定格式,只要遵守以下这条就ok了:(1)每一行可视为一个命令,(2)每个命令里可以含多条子命令,(3)从第一行开始执行,直到最后一行结束,它运行的平台是DOS。

批处理有一个很鲜明的特点:使用方便、灵活,功能强大,自动化程度高。

批处理文件的扩展名是BAT或者CMD,把任何一批命令放在有该扩展名的文件里,执行的时候都会按顺序逐条的执行, 在以后学习内容中, 还可以在其中加入一些逻辑判断的语句,即让里面的命令在满足一定条件时执行指定的命令。

2、举例说明:第一步:建立批处理文件新建一个文本文档,将名字改为第一个实例.bat创建批处理文件第一个实例.bat重命名第二步:写代码右键'第一个实例.bat'文件,选中“编辑”,然后写代码。

代码如下:@echo offecho 非常感谢所有条友的关注与支持!echo 感激不已, 惟有认真, 毫无保留的分享.pause编辑批处理脚本第三步:保存后,双击“第一个实例.bat”运行。

执行批处理脚本简单了解代码意思:@echo off 这一句是关闭回显(缺省回显是打开的),如果没有这一句的话会显示一些比较碍眼的信息。

echo 非常感谢所有条友的关注与支持!echo 感激不已, 惟有认真, 毫无保留的分享.上面两条指令的结果是在屏幕上打印echo后面的内容(如上图例脚本执行的结果)pause 这个pause,英文是暂停的意思,让脚本执行完上面的命令后等用户确认退出详细解释:(1)、echo off 关闭回显(即批处理中的命令语句不会显示)(2)、echo on 打开回显编辑中去除关闭回显的指令行开启回显执行的结果在CMD中解释一下回显是咋个意思(3)、符号“@”的意思是不显示它后面的命令语句,只显示命令执行的结果!把首行命令中的小老鼠符号去掉看看(4)、echo 用于显示echo命令的作用有两个,一个时在CMD上显示一行内容,如:echo 非常感谢所有条友的关注与支持!!还有一个是显示关闭命令的回显:echo off我们在echo off命令前加一个“@”符号是为了不让echo off这条命令本身显示出来,可以让批处理达到整体的美观!如测试以下代码:@echo offecho 你好echo 你好pause第二个实例再次解释一下:pause命令就是暂停的意思,防止批处理执行完毕后直接退出,执行到pause命令时CMD就会显示“请按任意键继续”这一行!3、基础知识补充前面几篇基础知识的链接:DOS基础命令汇总(一)DOS基础命令汇总(二,三,四,五)Dos命令进阶(一)---Net, NetstatDos 命令进阶(二)---FTP命令如果大家对那个DOS命令不明白,可以通过输入“命令”/? 或执行 'help 命令名'4、具体实例分析@echo offecho 正在清除系统垃圾文件,请稍后。

WindowsDOS命令批处理脚本

WindowsDOS命令批处理脚本

WindowsDOS命令批处理脚本批处理程序简单来说,批处理程序就是 Windows ⾃带的脚本,可以在 cmd | powershell 中直接运⾏,若写成⽂件,后缀为 .bat⼩知识1. cmd 与 powershel 不区分⼤⼩写2. 命令⾏的运算操作,类似于 PHP3. DOS 是磁盘操作系统;命令提⽰符是 DOS 系统的界⾯中输⼊ DOS 命令的提⽰位置;cmd 是系统运⾏其⾃带 DOS 的命令;cmd.exe是⼀个 16 位的 DOS 应⽤程序4. PID 是 processid(进程号);IM 是 imaginename(映像名称)5. 在 .bat ⽂件开头加上@echo off代表不输出描述,⽐如C:\Users\14805\desktop>...这样的描述不会输出,直接输出结果6. 设置变量set a=10,输出变量echo %a%,设置变量表达式set /a b=%a%+1简单演⽰:: 两个冒号表⽰ cmd 的注释rem 也表⽰ cmd 的注释# ⼀个井号表⽰ powershell 的注释bat ⽂件内容:echo "Hello World!"pausecmd 运⾏指令:test.bat输出 "Hello World!"powershell 运⾏指令:.\test.bat输出 "Hello World!"覆盖与追加内容覆盖echo "hello world" > t.txt追加echo "hello world" >> t.txt查看内容type多命令运算短路ipconfig || net user从第⼀个执⾏,直到执⾏正确停⽌断路ipconfig && net user从第⼀个执⾏,直到执⾏错误停⽌net user查看所有⽤户net user查看帮助net user /?查看帮助完整版net user /help其他命令感觉有点危险,先不写了参数传递bat ⽂件内容:echo %1 %2poweshell 运⾏指令:.\test.bat Hello World!输出 Hello World!cmd 运⾏指令:年⽉⽇date输出当前⽇期: 2021-09-27date /T输出 2021-09-27时分秒time输出当前时间: 23:14:16.68time /T输出 23:14poweshell 运⾏指令:date输出 2021年9⽉27⽇ 23:14:49calltest.bat ⽂件内容:echo "Hello "call test2.battest2.bat ⽂件内容:echo "Wordl!"poweshell 运⾏指令:.\test.bat输出 Hello World!tasklist | taskill获取当前状态运⾏进程的列表tasklist获取指定要连接的远程系统的 tasklist tasklist /S 192.168.0.1 /U admin /S password其他参数:/FI ⽤于筛选 /FO 输出指定格数tasklist /FI "PID eq 3232" /FO csv > a.csvtaskkill 是关闭进程taskkill /IM notepad.exetree⽂件⽣成树tree输出C:.├───a├───b└───c换⼀种⽂件⽣成树tree /A输出C:.+---a+---b\---c详细⽂件⽣成树tree /F输出C:.├───a│ a.txt│├───b└───cshutdown打开 GUI 执⾏远程主机关机的操作shutdown /i关闭本地主机shutdown /p某个时间点执⾏某个作业at 21:56 "notepad.exe"删除某个作业at 2 /delete每天都在某个位置执⾏某个作业at 22:00 /every:M,T,W,Th,F,S,Su C:\Users\14805\desktop\payload.exe setcmd 运⾏指令:显⽰当前环境变量set输出环境变量值echo %OS%输出 Windows_NT操作⽂件夹创建⽂件夹mkdir testmd test重命名⽂件夹ren test test1将 a ⽂件夹中的⽂件复制到 b ⽂件夹copy a b删除⽂件夹rmdir testrd test删除⽂件del *.txt重命名⽂件move test.txt test1.txt移动⽂件move C:\a\test.txt C:\b\test.txt循环结构1.if () else ()2.if () else ()3. 循环⽂件夹# for /d %%名称 in (路径/*) do 具体操作.bat⽂件内容:打印当前⽂件夹下的所有⽂件夹for /d %%a in (*) do echo %%a4.循环⽂件# for /r "⽬录⽂件" %%名称 in (匹配规则,例如 *.py) do 具体操作.bat⽂件内容:打印当前⽂件夹下的所有.py⽂件for /r "C:\Users\14805\Desktop\abc" %%a in (*.py) do echo %%a5.循环数字# for /L %%a in (start,step,end) do 具体操作.bat⽂件内容:ping 168.0.0.1 ⾄ 168.0.0.20(传⼊参数 %1 等于 168.0.0)for /L %%a in (1,1,20) do ping %1.%%a6.循环⽂件中的内容# for /F %%a in (⽂件名) do 具体操作.bat⽂件内容:打印test.bat中的内容for /F %%a in (test.bat) do echo %%a 常⽤快捷键清屏cls显⽰当前⽬录dir (cmd | powershell)ls (powershell)打开当前⽂件夹start .查找⽂件dir *.txt (cmd | powershell)显⽰当前路径pwd (powershell)。

dos批处理命令详解

dos批处理命令详解

dos批处理命令详解dos批处理命令详解导语:要学好DOS,就要学好批处理文件。

下面就由店铺为大家介绍一下dos批处理命令详解,大家一起去看看吧!DOS下的可执行文件有三种,分别是EXE,COM和BAT。

其中,EXE和COM文件都是二进制形式的,只有BAT文件是文本形式的,可以直接阅读。

因此,BAT文件和以上二进制可执行文件相比,内容要简单的多。

这些文件内包含着DOS命令的集合,通常叫作批处理文件。

批处理文件的组成虽然比较简单,但其用处非常大,使用也比较广泛。

比如每次都执行一些相同的命令,您一定会觉得非常麻烦,而放在批处理文件中执行的话则轻松得多。

AUTOEXEC.BAT就是一个特殊的批处理文件,它在DOS的启动时自动运行,在系统的配置中发挥着非常大的作用。

因此,要学好DOS,就要学好批处理文件。

下面介绍批处理文件的命令及其使用。

DOS自带的批处理命令:@ :将这个符号放在批文件中其它命令的前面,运行时将不显示命令本身。

如@ECHO OFF命令就在批文件首经常用到。

CALL :从一个批文件中调用另一个批文件,调用完后继续执行原来的批文件。

用法:CALL [批文件名]注:也可以使用COMMAND /C命令完成同样的操作。

CHOICE :选择命令。

这是一个DOS外部命令,但它主要用在批文件中。

CHOICE命令执行后将提示可选择的项目,这时通过一个按键来选则。

用法:CHOICE:[/C[:]按键表] [/N] [/S] [/T[:]选择值,秒数] [显示文本]其中,/C表示可选则的按键,/N表示不要显示提示信息,/S表示大小写字符敏感方式,/T表示若在批定的时间内没有选则的话,自动执行/C中定义的某个选择值。

显示文本是CHOICE命令执行时的提示信息。

选择结果将用ERRORLEVEL值来表示。

ECHO :显示指定的信息。

通常显示在屏幕上。

如ECHO Hello将在屏幕上显示Hello的字样。

另外,ECHO ON|OFF用来设置在批文件执行时是否显示命令本身。

DOS(包含IF语法)批处理命令全集

DOS(包含IF语法)批处理命令全集

DOS批处理命令全集(echo@if的用法)本来以为批处理和DOS没什么联系,并且认为批处理一下就可以学完所以就决定一周之内完成学习。

学习了之后发现,批处理是一个庞大的体系,要想完全掌握在短期内是没有办法完成的。

它和DOS命令有着不可分割的联系。

说白了,批处理就是一大片的DOS命令。

所以要想完成掌握批处理就相当于要将DOS 命令完成学会,除此之后还得学习一些语法知识。

因此,一周之内是无法完成的,不过没有完成也得写总结啊,不然不白学了么!这也是我写这篇文章的目的之一。

我将首先将我自己掌握的用通俗的语言描绘出来,力争让没有一点DOS基础的人也能按照我的文章自己学下去。

要学批处理,那我们就有必要知道什么是批处理。

一看到名字,批处理嘛,那么肯定可以对文件进行批量的处理。

批处理包括两种,一种是DOS批处理,另一种是PS(PHOTOSHOP)批处理。

我研究的是前者,后者主要是对图片进行处理的,我暂时没有这个雅兴去研究这个,大家有兴趣可以去试一下,到时候教教我也好。

前面已经说过了,批处理就是对文件进行批量处理的。

那么DOS批处理应该就是对一大批的DOS 命令一起处理的意思,这样理解的话,那么好了,我们学习它就容易多了,以后只要多去背一下DOS命令然后就可以写批处理文件了。

晕!忘了说怎么建立一个批处理文件了。

其实也很简单,可能我不说大家也知道。

就是这样建立的:打开一个记事本---在里面写上你的DOS命令---保存--命名以BAT为后缀(就是batch了,批处理的英文)。

行了,批处理文件建立成功了。

行了,现在废话少说,进入正题!开始我们的批处理语法及一些主要命令。

首先,我看到的最陌生的命令---echo。

这个命令我开始看的时候比较陌生,不太明白是干什么用的。

看完资料后自己试验了一下才明白它的具体作用。

下面我用通俗的语言还解释一下(避免用官方语言解释,免得大家都睡着了)。

ECHO在英文中就是回显的意思,就相当于C语言中的printf,例如ECHOHELLOWORLD,就相当于将HELLOWORLD打印出来。

系统助手DOS批处理小程序自动关机

系统助手DOS批处理小程序自动关机

@ECHO offTITLE 系统助手—QQ:371056634:startCLSrem 使用COLOR命令对控制台输出颜色进行更改MODE con: COLS=40 LINES=27rem MODE语句为设定窗体的宽和高COLOR 3Fset tm1=%time:~0,2%set tm2=%time:~3,2%set tm3=%time:~6,2%ECHO %date% %tm1%点%tm2%分%tm3%秒ECHO ========================================ECHO 请选择要进行的操作,然后按回车ECHO ————————————————————ECHO ┏━━━━━━━━━━┓ECHO ┃C——打开计算器——C┃★☆ECHO ┃0——清理小垃圾——0┃☆ECHO ┃1——设定时关机——1┃★☆ECHO ┃2——倒计时关机——2┃☆★★ECHO ┃3——删定时关机——3┃★☆ECHO ┃4——查看大任务——4┃☆☆★ECHO ┃5——刷新该时间——5┃☆★☆ECHO ┃6——锁定计算机——6┃☆☆ECHO ┃7——重启计算机——7┃★☆ECHO ┃8——注销计算机——8┃☆★☆★ECHO ┃9——退出计算机——9┃☆☆★ECHO ┗━━━━━━━━━━┛★★☆★ECHO.﹎┈┈ .o┈﹎﹎.. ○ oECHO.﹎┈﹎● ○ .﹎﹎o▂▃▅▆▅▃▂oECHO.┈┈ /█\/▓\ ﹎┈﹎﹎┈﹎o ﹎ECHO.▅▆▇█████▇▆▅▃▂┈﹎﹎﹎ECHO.mshta vbscript:createobject("sapi.spvoice").speak("welcome")(window.close):choSET Choice=SET /P Choice= 【选择】:rem 设定变量"Choice"为用户输入的字符IF NOT "%Choice%"=="" SET Choice=%Choice:~0,1%rem 如果输入大于1位,取第1位,比如输入132,则返回值为1ECHO.IF /I "%Choice%"=="C" GOTO calcIF /I "%Choice%"=="0" GOTO clearIF /I "%Choice%"=="1" GOTO SetHourIF /I "%Choice%"=="2" GOTO outtimeIF /I "%Choice%"=="3" GOTO delAtIF /I "%Choice%"=="4" GOTO viewIF /I "%Choice%"=="5" GOTO shuaxinIF /I "%Choice%"=="6" GOTO lockIF /I "%Choice%"=="7" GOTO restartIF /I "%Choice%"=="8" GOTO logoffIF /I "%Choice%"=="9" GOTO endrem 为避免出现返回值为空或含空格而导致程序异常,需在变量外另加双引号rem 注意,IF语句需要双等于号rem 如果输入的字符不是以上数字,将返回重新输入ECHO 选择无效,请重新输入ECHO.GOTO cho:calcmshta vbscript:createobject("sapi.spvoice").speak("c")(window.close)calcGOTO start:SetHourmshta vbscript:createobject("sapi.spvoice").speak("one")(window.close)CLSECHO.SET ask=SET /p ask=是否设定为每天执行关机命令(y/n),取消请按e:IF NOT "%ask%"=="" SET ask=%ask:~0,1%IF /I "%ask%"=="y" GOTO yesIF /I "%ask%"=="n" GOTO noIF /I "%ask%"=="e" GOTO returnGOTO SetHour:yesmshta vbscript:createobject("sapi.spvoice").speak("yes")(window.close)ECHO 请指定24小时制式时间,格式为小时:分钟SET shutdowntime=SET /p shutdowntime=输入:at %shutdowntime% /every:M,T,W,Th,F,S,Su tsshutdn 0 /delay:0 /powerdown >nul rem 设定为每周的星期一至星期日,即为每天IF NOT errorlevel 1 GOTO okrem 如果输入正确,就执行ok段的语句ECHO %shutdowntime% 不是标准的时间格式,请重新输入ECHO.GOTO yes:nomshta vbscript:createobject("sapi.spvoice").speak("no")(window.close)ECHO 请指定24小时制式时间,格式为小时:分钟SET shutdowntime=SET /p shutdowntime=输入:at %shutdowntime% tsshutdn 0 /delay:0 /powerdown >nulIF NOT errorlevel 1 GOTO okECHO %shutdowntime% 不是标准的时间格式,请重新输入ECHO.GOTO no:okmshta vbscript:createobject("sapi.spvoice").speak("ok")(window.close)ECHO.SET h=%shutdowntime:~1,1%SET ah=%shutdowntime:~0,1%SET am=%shutdowntime:~2,2%SET bh=%shutdowntime:~0,2%SET bm=%shutdowntime:~3,2%IF "%h%"==":" (SET HM=%ah%时%am%分) ELSE (SET HM=%bh%时%bm%分)rem 如果输入h:mm则HM=h时mm分,否则HM=hh时mm分IF /I "%ask%"=="y" ECHO 系统将于每天的%HM%关闭IF /I "%ask%"=="n" ECHO 系统将于%HM%关闭ECHO 设定完毕! 按任意键继续...PAUSE >nulGOTO start:returnmshta vbscript:createobject("sapi.spvoice").speak("return")(window.close) GOTO start:outtimemshta vbscript:createobject("sapi.spvoice").speak("two")(window.close) CLSECHO.ECHO 请输入倒计时秒数(返回请按:e)ECHO ————————————————————ECHO (设定后要取消,单击"确定"后按Ctrl+C键两次)SET timed=SET /p timed=输入:tsshutdn %timed% /delay:0 /powerdown >nulIF not errorlevel 1 GOTO okIF /I "%ask%"=="e" GOTO returnECHO %timed% 是无效的关机时间,请重新输入ECHO.GOTO outtime:delAtmshta vbscript:createobject("sapi.spvoice").speak("three")(window.close) clsecho.at /del /yecho 定时关机任务已取消,按任意键继续...pause >nulGOTO start:viewmshta vbscript:createobject("sapi.spvoice").speak("four")(window.close) MODE con: COLS=40 LINES=20COLOR 2FECHO.atECHO.ECHO 按任意键返回!PAUSE >nulGOTO start:shuaxinmshta vbscript:createobject("sapi.spvoice").speak("five")(window.close) goto start:lockmshta vbscript:createobject("sapi.spvoice").speak("six")(window.close) rundll32.exe user32.dll,LockWorkStationgoto start:restartmshta vbscript:createobject("sapi.spvoice").speak("seven")(window.close) shutdown -r -t 0:logoffmshta vbscript:createobject("sapi.spvoice").speak("eight")(window.close)logoff:endmshta vbscript:createobject("sapi.spvoice").speak("twice choose")(window.close) exit:clearmshta vbscript:createobject("sapi.spvoice").speak("zero")(window.close)echo ##########正在清理系统垃圾文件##########del /f /s /q %systemdrive%\*.tmpdel /f /s /q %systemdrive%\*._mpdel /f /s /q %systemdrive%\*.logdel /f /s /q %systemdrive%\*.giddel /f /s /q %systemdrive%\*.chkdel /f /s /q %systemdrive%\*.olddel /f /s /q %systemdrive%\recycled\*.*del /f /s /q %windir%\*.bakdel /f /s /q %windir%\prefetch\*.*rd /s /q %windir%\temp & md %windir%\tempdel /f /q %userprofile%\cookies\*.*del /f /q %userprofile%\recent\*.*del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"del /f /s /q "%userprofile%\Local Settings\Temp\*.*"del /f /s /q "%userprofile%\recent\*.*"echo ##########系统垃圾文件清理完成##########ECHO 按任意键返回...PAUSE >nulGOTO start。

DOS批处理介绍

DOS批处理介绍
For get Help, please Key: /?
L

2.)如果命令扩展名被启用,下列额外的 FOR 命令格式会受到支持: FOR /D %variable IN (set) DO command [command-parameters] 3.)如果集中包含通配符,则指定与目录名匹配,而不与文件名匹配。 FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters] 检查以 [drive:]path 为根的目录树,指向每个目录中的FOR 语句。如果在 /R 后没 有指定目录,则使用 当前目录。如果集仅为一个单点(.)字符,则枚举该目录树
L
12
第二种格式 if [not] exist [路径\]文件名 待执行的命令 如果有指定的文件,则条件成立,运行命令,否则运行下一句。 如: if exist c:\config.sys type c:\config.sys 表示如果存在c:\config.sys文件,则显示它的内容。
L
13
第三种格式 if errorlevel <数字> 待执行的命令 很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果(或者状态) ,通过if errorlevel命令可以判断程序的返回值,根据不同的返回值来决定执行不同 的命令(返回值必须按照从大到小的顺序排列)。如果返回值等于指定的数字,则条 件成立,运行命令,否则运行下一句。 如if errorlevel 2 goto x2 返回值从大到小的顺序排列不是必须的, 而只是执行命令为 goto 时的习惯用法, 当 使用 set 作为执行命令时, 通常会从小到大顺序排列, 比如需将返回码置入环境变 量, 就需使用以下的顺序形式: if errorlevel 1 set el=1 if errorlevel 2 set el=2 if errorlevel 3 set el=3 if errorlevel 4 set el=4 if errorlevel 5 set el=5 ... 当然, 也可以使用以下循环来替代, 原理是一致的: for %%e in (1 2 3 4 5 6 7 8...) do if errorlevel %%e set el=%%e

dos批处理实例800例

dos批处理实例800例

dos批处理实例800例
摘要:
1.什么是DOS 批处理
2.DOS 批处理的应用实例
3.如何编写DOS 批处理程序
4.总结
正文:
一、什么是DOS 批处理
DOS 批处理(Batch Processing)是一种在操作系统中执行多个命令的方式。

通过将一系列命令组合成一个批处理文件,用户可以一次执行这些命令,从而提高工作效率。

在DOS 操作系统中,批处理文件具有.bat 扩展名。

二、DOS 批处理的应用实例
本文提供了800 个DOS 批处理实例,这些实例涵盖了日常生活和办公中的各种场景,如文件操作、系统维护、网络设置等。

这些实例可以帮助用户更好地理解和运用DOS 批处理,提高工作效率。

三、如何编写DOS 批处理程序
编写DOS 批处理程序分为以下几个步骤:
1.选择合适的文本编辑器,如Notepad、Visual Studio 等,新建一个文本文件。

2.将文件扩展名改为.bat,以确保文件在执行时以批处理文件的形式打开。

3.在文本文件中输入一系列DOS 命令,用以实现所需功能。

各个命令之间用回车符(Enter)分隔。

4.保存文件并运行,查看批处理程序的执行结果。

四、总结
DOS 批处理是一种便捷的操作方式,能够帮助用户一次性执行多个命令。

最全的DOS命令帮助程序批处理代码

最全的DOS命令帮助程序批处理代码
都是生成a.txt的帮助文档 复制代码 代码如下:
@echo off color 0e :ks cls echo ========================== echo 欢迎使用批处理帮助程序 echo %DATE% (by:诗酒飘零) echo ========================== echo. echo 请输入你想查询的批处理命令? echo (q键退出;h键帮助) echo. set /p lc= ★命令★: if %lc%==q goto e if %lc%==h help %lc% /? >a.txt if errorlevel 1 goto no if errorlevel 0 goto yes :yes start a.txt goto ks :no echo ========================================== echo 找不到你要的批处理命令,请检查后重新输入命令! echo ========================================= del a.txt pause call %0 :e del a.txt exit
也动打开跟脚本之家发布的上面那个类似想学习批处理的朋友可以参考下
最全的 DOS命令帮助程序批处理代码
根据命令命名的txt 复制代码 代码如下:
@echo off :z @cls @set /p "d=输入要BAT指令:" @ %d% /? > %d%.txt goto z goto z
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.简单批处理内部命令简介先来看一个垃圾清理批处理文件吧@echo offecho 正在清除系统垃圾文件,请稍等...... del /f /s /q %systemdrive%\*.tmpdel /f /s /q %systemdrive%\*._mpdel /f /s /q %systemdrive%\*.logdel /f /s /q %systemdrive%\*.giddel /f /s /q %systemdrive%\*.chkdel /f /s /q %systemdrive%\*.olddel /f /s /q %systemdrive%\recycled\*.* del /f /s /q %windir%\*.bakdel /f /s /q %windir%\prefetch\*.*rd /s /q %windir%\temp & md %windir%\tempdel /f /q %userprofile%\recent\*.*del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"del /f /s /q "%userprofile%\Local Settings\Temp\*.*"del /f /s /q "%userprofile%\recent\*.*" echo 清除系统垃圾完成~echo. & pause将上面的内容保存为*.bat就可以运行了,清理系统垃圾下面是详细讲解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 noparmsif {%2}=={} goto noparms(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。

)@Rem check parameters if null show usage:noparmsecho Usage: monitor.bat ServerIP PortNumbergoto end标签的名字可以随便起,但是最好是有意义的字母啦,字母前加个:用来表示这个字母是标签,goto命令就是根据这个:来寻找下一步跳到到那里。

最好有一些说明这样你别人看起来才会理解你的意图啊。

4.Rem 命令注释命令,在C语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。

Rem MessageSample:@Rem Here is the description.5.Pause 命令运行Pause 命令时,将显示下面的消息:Press any key to continue . . .Sample:@echo off:begincopy a:*.* d:\backecho Please put a new disk into driver A pausegoto 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:\dos\defraggoto 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 noparmsif {%2}=={} goto noparms2、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 为一个或多个文件名。

相关文档
最新文档