bat shell 语法对应关系
Bat Shell 语法对应关系
Bat Shell 是一种早期 Windows 操作系统的脚本编程语言,在 Windows 系统中使用广泛。相比较其他脚本语言,它更接近于人类语言,比较容易上手。但是他的语法规则相对来说稍微有些复杂,我们需要好好地理解这些规则,才能更好地掌握这个语言。本文将帮助大家领略它的奥秘。
一、命令和注释
在 Bat Shell 中,命令和注释是两个比较常用的语法结构。下面分别对它们进行说明:
命令是 Bat Shell 最基础的语法结构,它用于调用系统的命令行工具和执行一些指令。命令通常包含以下几个组成部分:
1、命令行程序的名称; 2、命令行程序的参数; 3、特殊参数(例如 %@、%* 等等)。
举个例子,如果我们想要调用 Windows 的 dir 命令,可以使用以下语句:
dir C:\
其中,C:\ 是 dir 命令的参数。
注释也是 Bat Shell 的一个重要语法结构,它用于给代码添加注释,使代码更易读。
在 Bat Shell 中,注释有两种方式:
1、使用“rem”关键字,表示注释,并在该行开头注释; 2、使用“::”表示注释。
如下所示:
rem This is a comment.
:: This is also a comment.
二、变量
在 Bat Shell 中,变量同样也是一个非常重要的语法结构,用于存储中间结果和携带数据。变量是一种容器,可以将任何值保存到其中,并且可以在脚本中使用。对于 Bat Shell 脚本,
变量以“%”开头。
在 Bat Shell 中,变量有三种类型:
1、局部变量:只能在某个函数或者语句块中使用; 2、环境变量:可以在所有的 Bat Shell 命令中访问; 3、命令行参数:在调用脚本时,可以传入给脚本的参数。
下面是一些示例如下:
set var1=hello
echo %var1%
echo %USERPROFILE%
echo %1%, %2%, %3%
三、条件判断
在 Bat Shell 中,我们可以使用 if / else 关键字实现条件判断。if / else 是一个非常常用的
语法结构,我们可以根据条件的真假执行不同的语句块。
基本的语法如下:
if condition (  commands to execute if the condition is true ) else (  commands to execute if the condition is false )
例如,以下代码解释了一下如何判断两个数字的大小:
set /a num1=10 set /a num2=20
if %num1% lss %num2% (  echo %num1% is less than %num2% ) else (  echo %num1% is greater than %num2% )
四、循环
在 Bat Shell 中,我们可以使用 for 循环来重复执行一组语句。for 循环有两种方式:一种是基于文件/文件夹,另一种是基于变量/数组。
1、基于文件/文件夹的 for 循环:
for /f "tokens=* delims=" %%f in ('dir /b /s C:\') do (  echo %%f )
2、基于变量/数组的 for 循环:
set fruits=apple orange banana for %%f in (%fruits%) do (  echo %%f )
五、函数
在 Bat Shell 中,我们可以使用 subroutine 来定义一个函数,然后在代码中使用它。
基本的语法如下:
:subroutine_name commands to execute goto :eof
例如,以下代码定义了一个函数,可以输出统计某个文件夹中的文件数量:
:count_files set /a count=0 for /r "%1" %%f in (*) do set /a count+=1 echo %count% goto :eof
shell命令属于什么语言在调用的时候:
call :count_files "C:\user\"
最后
通过本文的学习,我们了解了 Bat Shell 语言的基本语法,并可以熟练地运用到我们的生产工作中。当然,如果您想要更深入地学习 Bat Shell,还需要多加练习和学习。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。