几个批处理的写法

1. 取传入参数时把参数的双引号去掉:[text light=”true”]set PARA=%~1[/text]

2. 判断参数为空时跳转:[text light=”true”]if “%~1″==”” goto Usage
:Usage
echo Usage: abc.bat [PARAMETER][/text]
参数前后要加上双引号,比如用“if %1==”” goto Usage”会出错。

3. 内容替换:[text light=”true”]set P=%cd%
set P=%P:\=\\%[/text]
第1行把当前目录赋给P参数,第2行把“\”替换成“\\”。

4. 内容提取:[text light=”true”]set D=%date:~0,10%
set D=%D:-=%
set T=%time:~3,5%
set T=%T::=%[/text]
第1行把“2010-07-29 星期四”此类格式的日期前10个字符即“2010-07-29”赋给D,第2行把D参数的“-”替换为空,即D是“20100729”;
第3行把“13:39:08.90”此类格式的时间从第4个字符起连取5个字符即“39:08”赋给T,第4行把T参数的“:”替换为空,即T是“3908。”

4. 重定向输出:[text light=”true”]echo Hello Word!>C:\out.txt
echo.>>C:\out.txt[/text]
第1行把“Hello Word!”重定向输出到“C:\out.txt”文件中,如果文件已存在则替换,否则新建;
第2行追加一个空行到“C:\out.txt”文件中。

Tags:

Leave a Reply