windows批处理是windows下最为强大的脚本,而且除了可以调用常用的系统命令和应用程序,还有强大的debug工具可以在系统层面去处理问题,下面针对常用的命令简单做一个教程。
本教程按照固定格式进行进行,即关键字及说明,格式说明,简单例子和通常适用范围四个部分,下面为教程正文。
写在前面
- windows 命令行有2种执行方式,可以按住win+R键,输入cmd进入命令提示符界面,手动输入,但是此种方法进支持一些简单的指令,另外就是讲文件编写到txt文档中,然后将后缀名改为.bat,然后双击执行,此文件亦称为批处理文件。
- windows命令不区分大小写,所有指令大写或者小写都是一样的结果,本文全部使用大写以示与其他元素的区别。
- 在windows 7中,有部分的命令执行需要管理员权限,因此windows 7的执行会和xp有所差别。
- 批处理天然支持vbs语言,可以用vbs实现原本cmd无法实现的功能,本教程不对vbs进行额外阐述。
开始教程
- ECHO ————打开或者关闭显示,关闭显示时用来显示内容。
格式:
ECHO [{ ON | OFF}] [MESSAGE]
例子:
ECHO OFF #关闭所有显示,即除了ECHO输出的信息之外,命令行及执行过程都不显示。 ECHO hello world! #显示hello world!
通常使用说明:
1. 用于关闭显示命令行本身,在文档起始位置输入ECHO OFF
2. 用于输入必要的信息,类似打印。
- @ ————表示不显示@后面的内容。
格式:
@任意命令
例子:
@ECHO OFF #不显示任何所有,包括ECHO OFF本身
通常使用说明:
与ECHO OFF联合使用,关闭显示命令行。
- GOTO ————跳转到指定的标签。
格式:
GOTO A ... :A ECHO This is A
例子:如上所示
通常使用说明:
1. 进行条件跳转,后续列子中choice常与之配合使用来获取客户输入。
2. 也可以与if 等判断条件进行配合,条件跳转。
- REM ————注释本行。
格式:
REM 任意句子
例子:
REM @ECHO OFF #打开显示
通常使用说明:
1. 用来注释文档。
2. debug。
- PAUSE ————设置断点,屏幕显示:请按任意键继续. . .。
格式:
PAUSE
例子:如上所示
通常使用说明:
debug或者程序结束。
- CALL ————调用外部批处理。
格式:
CALL [[driver:][path]filename[参数]] | [:label[参数]]
例子:
CALL A.BAT #同文件夹下的 CALL A ... :A ECHO This is A!
通常使用说明:
1. CALL 用于调用外部文件时,类似函数调用,按照顺序方式执行。
2. CALL 调用标签,只是将标签内容提前执行,返回调用后,A的内容可能被执行2次。
- START ————调用外部批处理,DOS命令和外部程序。
格式:
START [[driver:][path]filename[参数]]
例子:
START A.BAT #同文件夹下的 START calc # 打开计算器
通常使用说明:
1. START 属于双线程执行的,且变量传递为调用传递到被调用,不可逆传。
2. START 可执行外部程序,且退出本cmd也不影响已开启的程序。
- COLOR ————设置窗口颜色。
格式:
COLOR 颜色码
例子:
COLOR 0A #黑色背景绿色输出。
通常使用说明:
- IF ————调用外部批处理,DOS命令和外部程序。
格式:
IF "参数" =="字符串" # 字符串判断 IF Command # 指令判断 IF NOT |EXIST [FILE FULL PATH] #文件判断 # 若存在有ELSE在后面,则IF 后面执行的内容必须要用()包括,
例子:
# 在执行该文件时,需要带参数输入。 # %1表示执行该文件的第一个参数。 IF "%1" == "A" ECHO A
通常使用说明:
1. IF作为一个最常用的判断条件指令,可嵌套使用,也可以配合GOTO执行跳转。
2. IF单独使用时,可忽略().
3. IF可判断文件存在与否,字符串的相等与否,数字相等与否,指令的执行结果是否为true等。
未完待续