本文介绍,bat脚本中常用的简单语句。
1.从终端获取用户的输入
使用 set /p 命令获取用户输入,echo进行回显。
例如:
set /p name=your name:
echo %name%
set /p branch_val=branch_val:
echo %branch_val%
note:终端会先给出一个提示,然后接收输入,当用户敲入回车后,输入的行内容会被赋值给 name ,但不包括换行。
2.注释添加
建议使用::与% comment %进行注释;
a.添加一行注释,可使用REM, @REM和::
:: 不输出注释内容
REM 输出注释内容
@REM 不输出注释内容
例如:
::set /p name=your name:
::echo %name%
REM set /p name=your name:
REM echo %name%
@REM set /p name=your name:
@REM echo %name%
如上语句均被注释掉(即为注释语句)。
b.在行尾添加注释
例如:
set /p name=your name: & :: 输入你的名字
echo %name% & :: 打印输入的名字
set /p name=your name: & REM 打印输入的名字
echo %name% & REM 打印输入的名字
set /p name=your name: & @REM 打印输入的名字
echo %name% & @REM 打印输入的名字
c.行间注释
% comment %放在任何地方都可以。注意:为了避免错误,%和注释之间要留有空格。
例如:
% set /p name=your name: %
注意:% comment % 注释中不能嵌套 %变量%,如:% %name% %
d.多行注释
可以使用
@GOTO :标签名
comment
:标签名
@GOTO 冒号后面的标签名可以随便取,不过建议全部使用大写字母。
例如:
@GOTO :STEP1
set /p name=your name:
echo %name%
set /p name=your name:
echo %name%
:STEP1
STEP1标签区间内容被注释。
3.注释输出
@ECHO OFF会关闭注释输出;@ECHO ON则打开注释输出。
例如:
@echo off
4.判断比较语句
操作符(不区分大小写):
equ 等于
neq 不等于
lss 小于
leq 小于等于
gtr 大于
geq 大于等于
其中,只有等于操作符可以使用符号 “==” 表示,其他操作符只能使用英文简写。
a. If指令格式为:if 条件表达式 (…)
注意:比较表达式和()之间必须有空格;英文缩写的比较操作符,左右两边必须有空格;“==”两侧可以不加空格;
例如:
if %branch_val%==1 (
echo ****大小相等
) else (
echo ****大小不等
)
if %branch_val% equ 1 (
echo ****大小相等
) else (
echo ****大小不等
)
参数"/I(i)"可以在比较字符串时串忽略大小写:
if /i “abc”==“ABC” (
echo 大小相等
) else (
echo 大小不等
)
b.多分支语句 if else if
例如:
set branch_val=-2
if %branch_val%==0 (
echo master分支
) else if %branch_val% gtr 0 (
echo v5.0.1
) else (
echo 未知
)