cd 显示当前目录名或改变当前目录。
rd 删除一个目录。
dir 显示目录中的文件和子目录列表。
tree 以图形显示驱动器或路径的文件夹结构。
path 为可执行文件显示或设置一个搜索路径。
copy 复制文件和目录树。
type 显示文本文件的内容。
copy 将一份或多份文件复制到另一个位置。
del 删除一个或数个文件。
ren 重命名文件。
attrib 显示或更改文件属性。
find 搜索字符串。
fc 比较两个文件或两个文件集并显示它们之间的不同
ping 进行网络连接测试、名称解析
net 网络命令集及用户管理
msg 给用户发送消息
arp 显示、修改局域网的IP地址-物理地址映射列表
at 安排在特定日期和时间运行命令和程序
shutdown立即或定时关机或重启
sc 系统服务设置与控制
reg 注册表控制台工具
powercfg控制系统上的电源设置
对于以上列出的所有命令,在cmd中输入命令+/?即可查看该命令的帮助信息。如find /?
批处理里面的数值计算功能较弱,只能够进行整型计算,忽略浮点数的小数部分;同时数值计算的范围也受限于系统位数,对于目前较为常见的32位机来说,数值计算能处理的数值范围为0xx7FFFFFFFh,即-~+。
数值计算需要使用set命令,具体格式为“set /a expression”。其中,expression代表计算表达式,计算表达式跟C语言里面的表达式基本上完全一致。set支持的运算符也跟C语言里面的一样,只是没有了増一减一。set支持的运算符及优先级排序如下:
! ~ - - 一元运算符(逻辑非、按位非、取负)
* / % - 算数运算符(乘、除得商、除得余数,即取余)
+ - - 算数运算符(加、减)
& - 按位“与”
^ - 按位“异”
| - 按位“或”
, - 表达式分隔符(set可一次处理多个表达式)
我们知道,批处理中取变量的值是需要用%或者!的,而在set /a 中,直接用变量名称即可取得变量的值。另外,set支持八进制(数字前缀0)、十进制(数字无前缀)和十六进制(数字前缀0x),且支持不同进制之间的计算,如set /a a=123+,计算及显示结果为十进制。
学习有关批处理的一些比较琐碎、但又比较有价值的一些知识,运用这些知识后,才有条件更好的实现的批处理的功能,并能使批处理摆脱黑白世界而显得更加多姿多彩。
所谓“环境变量”,实际上就是C语言里面的“变量”的意思。批处理的变量可以分为两类,由系统定义的系统变量和由用户根据需要自定义的用户变量。
【 1.系统变量 】
批处理的一些变量是由操作系统事先定义好的,可以适用于任何批处理,我们称这些特殊的变量为“系统变量”。系统变量有很多个,包括硬件类、操作系统类、文件路径类、系统时间类等。要查看所有的系统变量,请新打开一个cmd窗口,输入set回车即可。对几个比较常用的变量解释如下:
ComputerName 计算机名,即右键 我的电脑--属性--计算机名 选项卡中的“完整的计算机名称”
Path 可执行文件默认搜索路径。这个东东非常重要!待会儿单独讲解…
Prompt 个性化设置cmd提示符的必备武器!不过,我没怎么用过~
Temp、Tmp 文件、程序等可使用的临时目录,默认是C:\WINDOWS\Temp或Tmp。几乎所有的程序在运行时都会在这个目录里面“临时”写入文件。一般情况下,程序写入的临时文件都应该被该程序删除,可惜的是,大部分的程序都很健忘,导致这个文件夹占据的空间越来越大,自然也就使我们的系统增肥喽。所以,我们要把它修改到其他分区,并且时时的清理里面的临时文件。
UserName 当前用户名,即所登陆的账户名
UserProfile 当前用户的配置目录,一般都是C:\Documents and Settings\%UserName%。默认情况下,我们的桌面就是这个目录下面的“桌面”文件夹;我的文档就是这个目录下面的“My
Documents”文件夹。所以啦,往桌面上或我的文档里面放东西就是放到这个文件夹下面了,也就是放到C盘了,重装系统时要覆盖C盘内容的,所以桌面上或我的文档里面的东西当然就会Gone with the Wind了~解决方法有两个,一是保持良好的习惯,不把重要文件放到这两个地方;二是,修改默认设置,将这两个文件夹都移到其他分区。
编写批处理程序时,用户根据需要自己定义的变量称之为用户变量。用户变量类似于C语言里面的变量,仅仅在定义该变量的程序中有效。
用户变量由set命令定义,这是批处理中非常非常重要的一个操作,从而使set命令成为批处理里面使用频率最高的几个命令之一。关于set命令的使用,参考set /?,本教程也会在后面对其进行讲解。
【 3.变量引用 】
前面的几节课里面,我们已经看到了如何引用变量,即直接用变量名操作变量,通过"%"或"!"来获取变量的值。其中,只有在for语句里面重复对同一变量多次赋值时才需要使用"!",并且在使用"!"调用变量时,要首先“启用延迟环境变量扩充”,启动命令为:SetLocal
:eof,该语句相当于C语言里面的return或汇编语言里面的RET,即子程序返回命令。需要说明的是,当子函数本身就在批处理文件的末尾的话,我们是可以省略这句话的,比如将此例的goto :eof删除是不会产生任何影响的。
【 2.间接传递 】
批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT。
REM 是个注释命令一般是用来给程序加上注解的,该命令后的内容在程序执行的时候将不会被显示和执行。例:
REM 你现在看到的就是注解,这一句将不会被执行。在以后的例子中解释的内容都REM 会放在REM后面。请大家注意。
ECHO 是一个回显命令主要参数有OFF和 ON,一般用ECHO message来显示一个特定的消息 。例:
Rem 以上代表关闭回显即不显示所执行的命令
Echo 这个就是消息。
Rem 以上代表显示“这就是消息”这列字符
GOTO 即为跳转的意思。在批处理中允许以“:XXX”来构建一个标号然后用GOTO :标号直接来执行标号后的命令。例
REM 上面就是名为LABEL的标号。
REM 以上程序跳转标号LABEL处继续执行。
CALL 命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后再继续执行原来的批处理。例:
批处理2.BAT内容如下:
ECHO 这就是2的内容
批处理1.BAT内容如下:
ECHO 这是1的内容
ECHO 1和2的内容全部显示完成
1和2的内容全部显示完成
PAUSE 停止系统命令的执行并显示下面的内容。例:
请按任意键继续 . . .
IF 条件判断语句,语法格式如下:
[NOT] 将返回的结果取反值即“如果没有”的意思。
ERRORLEVEL 是命令执行完成后返回的退出值
Number 退出值的数字取值范围0~255。判断时值的排列顺序应该又大到小。返回的值大于或等于指定的值时条件成立。
string1==string2 string1和string2都为字符的数据,英文字符的大小写将看做不同,这个条件中的等于号必须是2个(绝对相等),条件相等后即执行后面的 command
IF ERRORLEVEL这条语句必须放在某一个命令后面。执行命令后由IF ERRORLEVEL来判断命令的返回值。
在一堆文本文件中查找特定字符串,文件类型暂时支持txt,jsp,cs,htm,需要其他文件类型,在源码里自己改
bat脚本要打开有空格的路径,start后面必须加引号,exe路径也要加引号
cmd批处理bat命令根据端口号关闭杀死对应进程程序cmd批处理bat命令根据端口号关闭杀死对应进程程序使用场景和功能介绍主界面下载地址源代码 cmd批处理bat命令根据端口号关闭杀死对应进程程序 使用场景和功能介绍 ...
已知当前bat文件已经开启触发了命令程序,请问要怎么才能关闭,不服的请自行下载
每次打开cmd命令行输入命令觉得太麻烦,于是写了个bat脚本,直接点击执行就可以杀掉端口占用的进程了 windows 系统内,新建一个文本文档另存为killByPort.bat 文件,编码格式请选择ANSI编码(中文乱码)。复制下面...
绑定网关的批处理及预留维护提到.bat 被锁定帐户.bat 不显示扩展名....打开快捷方式指向的目录.bat 弹出光驱.bat 断开网络联结.bat 改变我的文档路径.bat 给每个盘添加卷标.cmd 更改电源管理方式....
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。