函数是组织在一起执行特定任务的一组语句。 在批处理脚本中,采用类似的方法将逻辑语句组合在一起形成一个函数。
像其他语言一样,批处理脚本中的函数也遵循相同的程序规则 -
在批处理脚本中,通过使用标签语句来定义函数。 当一个函数被重新定义时,它可能会将一个或多个值作为函数的输入“参数”,并在函数的主体中处理,并将值作为输出“返回类型”传回给函数。
每个函数都有一个函数名称,它描述了函数执行的任务。 要使用一个函数,需要用它的名称来“调用”这个函数,并传递与函数参数类型相匹配的输入值(称为参数)。
以下是一个简单函数的语法。
:function_name Do_something EXIT /B 0
其中,
function_name
是赋予函数的名字,它应该与函数的实际功能相匹配。EXIT
语句用于确保函数正常退出。以下是一个简单函数的例子。
:Display SET /A index=2 echo The value of index is %index% EXIT /B 0
常见的函数使用,如下列表所示 -
编号 | 函数 | 描述 |
---|---|---|
1 | 调用函数 | 在批处理脚本中如何使用call 命令调用一个函数 |
2 | 带参数的函数 | 当函数调用时,函数可以通过传递参数来处理参数。 |
3 | 具有返回值的函数 | 函数可以通过传递变量名称来处理返回值 |
4 | 函数中的局部变量 | 函数中的局部变量可以用来避免名称冲突,并保持函数本地的变量变化。 |
5 | 递归函数 | 通过在函数中保持局部变量的变化并且对调用者不可见,完全封装函数主体的能力。 |
6 | 文件I/O | 在批处理脚本中,可以执行任何编程语言中预期的正常文件I/O操作。 |
7 | 创建文件 | 新文件的创建是通过重定向过滤器> 来完成的。 此过滤器可用于将任何输出重定向到文件。 |
8 | 写入文件 | 内容写入文件也是借助于重定向过滤器来完成的。 此过滤器可用于将任何输出重定向到文件。 |
9 | 附加到文件 | 内容写入文件也是在双重定向过滤器的帮助下完成的。 此过滤器可用于将任何输出附加到文件。 |
10 | 从文件读取 | 在批处理脚本中读取文件是通过使用FOR 循环命令来完成文件中需要读取的每一行。 |
11 | 删除文件 | 要删除文件,批处理脚本提供了DEL 命令。 |
12 | 重命名文件 | 要重命名文件,批处理脚本提供了REN 或RENAME 命令。 |
13 | 移动文件 | 要移动文件,批处理脚本提供MOVE 命令。 |
14 | 批处理文件-管道 | 管道运算符(竖线)将一个命令的输出(默认为STDOUT )引导到另一个命令的输入(默认为STDIN )。 |
15 | 批处理文件-输入 | 批处理文件运行时,可以选择传递命令行参数,然后在程序中读取这些参数以进一步处理。 |
16 | 使用SHIFT运算符 | 命令行参数的一个限制是它只能接受直到%9 的参数。 |
17 | 文件夹操作 | 在批处理脚本中,可以使用任何编程语言执行普通的基于文件夹的操作。 |
18 | 创建文件夹 | 创建一个文件夹是在MD (创建目录)命令的帮助下完成的。 |
19 | 列出文件夹内容 | 文件夹内容的列表可以用dir 命令完成。 该命令用来查看当前目录中的可用文件和目录。 |
20 | 删除文件夹 | 要删除文件夹,可使用批处理脚本提供的DEL 命令。 |
21 | 重命名文件夹 | 对于重命名文件夹,批处理脚本使用REN 或RENAME 命令。 |
22 | 移动文件夹 | 对于移动文件夹,批处理脚本提供MOVE 命令。 |