批处理学习摘记
注释
:rem
不显示当前行命令
加前缀@
预定义的变量
下面是些已经被底层定义好可以直接使用的变量:不会出现在 SET 显示的变量列表中
%CD% - 扩展到当前目录字符串。
%DATE% - 用跟 DATE 命令同样的格式扩展到当前日期。
%TIME% - 用跟 TIME 命令同样的格式扩展到当前时间。
%RANDOM% - 扩展到 0 和 32767 之间的任意十进制数字。
%ERRORLEVEL% - 扩展到当前 ERRORLEVEL 数值。
%CMDEXTVERSION% - 扩展到当前命令处理器扩展名版本号。
%CMDCMDLINE% - 扩展到调用命令处理器的原始命令行。
%0:默认为批处理的文件名,%1以后依次为批处理命令的参数,最多到%9
%path% - 当前的环境变量。以分号隔开的路径列表,路径可包含空格,可以以'/'结尾, 可以以双引号包围之。
for /l %%a in (begin, increment, end) do
将.cnf转化为.txt文件的例子
md tmp
for %%a in (*.cnf) do (
start /wait ../Transform.exe %%a tmp/%%a
del %%a
)
cd tmp
ren *.cnf *.txt
move *.txt ..
cd ..
rd tmp
echo命令输出特殊字符
1、利用在特殊符号前加“^”将特殊字符输入文件。 例如,^&表示&,^^表示^
2、%%表示%
交互式输入
使用SET /P,例如
a.bat内容:
@ECHO OFF
SET /P VAL=Please input a number:
ECHO %VAL%

浙公网安备 33010602011771号