bat批处理简明基础语法

每次写点windows的脚步都会重新看一边,不如自己写一点常见的然后自己回顾。

一、常用关键字

rem 代表所在行为注释文字不会被执行

title 可以设置当前弹窗的窗口标题

echo 输出文字或变量

pause 暂停命令执行到当前行暂停等待下一步

二、if语句

在 cmd 中输入 if /? 即可获取帮助

rem 1 if语句
if (condition) do_something

rem 2 if/else 语句
if (condition) (do_something) else (do_something_else) 

三、for 循环结构

在 cmd 中输入 for /? 即可获取帮助

对一组文件中的每一个文件执行某个特定命令。

FOR %variable IN (set) DO command [command-parameters]

%variable 指定一个单一字母可替换的参数。
(set) 指定一个或一组文件。可以使用通配符。
command 指定对每个文件执行的命令。
command-parameters
为特定命令指定参数或命令行开关。

在批处理程序中使用 FOR 命令时,指定变量请使用 %%variable
而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I.

  • for语句中indo是必须有的;
  • in之后,do之前,也就是set的括号不能省略;
  • 括号中的set可以是一个或多个字符串或变量,每一个字符串或变量称之为一个元素,每个元素之间可以用空格、tab键、逗号、分号、等号进行分隔,通常使用英文逗号隔开
rem 举例
for %%i in (*,1.txt) do call echo %%i

四、call 语句

从批处理程序调用另一个批处理程序。

echo 调用另外一个bat文件并执行
call 1.bat
call C:\Users\Administrator\Desktop\BAT\2.bat
pause

echo 下面使用标签式调用
call :print
goto end
 
:print
echo 这里是print标签的信息
goto :eof
:end

其他

  • bat批处理显示当前目录
echo %~dp0
echo %cd%
  • wusa 命令 静默安装msu系统补丁更新包
 wusa D:\kb4016252-x64.msu /quiet /norestart
Author: thinkwei

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注