利用bat

bat批处理文件是一个文本文件,其每一行都是一条DOS命令。同时bat也是一种简单的运行程序。

一、简单介绍批处理文件

batwindow系统下的一种批处理文件,主要适用于自动的连续执行多条命令。批处理文件支持条件判断、循环和流程控制。每个编写好的批处理文件相当于一个DOS外部命令。(如果批量文件路径被添加到 PATH,)

通过利用批处理文件可以有效简化我们的操作处理。

二、bat常用命令

  • echo 表示 显示此命令后的字符
  • echo off 表示 在此语句后所有运行的命令都不显示命令行本身
  • @ 表示 与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(@ 只能影响当前行)
  • call 表示 调用另一个批处理文件(如果不用 call 而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。
  • pause 表示 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue…的提示,等待用户按任意键后继续
  • rem 表示 注释当前代码行
  • % 参数表示符
  • %[1-9] 表示 参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。(%0表示批处理命令本身)

三、bat特殊命令

  • if 条件语句,其支持三种格式
    • if [not] "param" == "string" expression 程序(不)满足条件时,执行相应操作。
    • if [not] exist [path\]filename expression 指定文件(不)存在时,执行相应操作。
    • if errorlevel <number> expression 很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果。通过 errorlevel 可以判断程序的返回值。
  • goto 跳转操作,常与 labal(标号,标号用 : 后跟标准字符串来定义) 配合使用。

    1
    2
    3
    goto end

    :end
  • choice 使用此命令可以让用户输入一个字符(用于选择),从而根据用户的选择返回不同的errorlevel,然后于if errorlevel配合,根据用户的选择运行不同的命令。

    • 语法 CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text]
参数 选项 说明
/C choices 指定要创建的选项列表。默认列表是 “YN”。
/N 在提示符中隐藏选项列表。提示前面的消息得到显示,选项依旧处于启用状态。
/CS 允许选择分大小写的选项。在默认情况下,这个工具是不分大小写的。
/T timeout 做出默认选择之前,暂停的秒数。可接受的值是从 0 到 9999。如果指定了 0,就不会有暂停,默认选项会得到选择。
/D choice 在 nnnn 秒之后指定默认选项。字符必须在用 /C 选项指定的一组选择中; 同时,必须用 /T 指定 nnnn。
/M  text 指定提示之前要显示的消息。如果没有指定,工具只显示提示。
/? 显示帮助消息。
  • for 循环命令。 对一组文件中的每一个文件执行某个特定命令。
    • 语法 FOR %%variable IN (set) DO command [command-parameters]

四、编写一个简单的示例

场景:现在需要将 D:\mine\test\a 中所有的文本文件,移动到 D:\mine\test\b 中。

1
2
cd a
for %%f in (*.txt) do XCOPY %%f ..\b\
-------------本文结束感谢您的阅读-------------
0%