【bat】批处理中的⾏,段注释
有些时候,我们需要在批处理中使⽤⼤段的注释,即连续的注释超过2⾏。那么,如何实现他呢?
⽅法有很多种,本⽂仅列举其中的⼀部分。
㈠、使⽤rem
注意:注释中不能使⽤重定向符和管道符;
当回显处于打开是时,rem 命令及注释内容将被显⽰;
rem 和注释之间要有空格。
1
⽰例:
㈡、使⽤::
Windows XP 可以识别以冒号 (:) 开头作为标签的批处理程序⾏并且不会将它作为命令处理。如果某⾏以冒号开始,则该⾏的任何命令都将被忽略。
1
⽰例:
㈢、使⽤echo >nul
注意:注释中不能使⽤重定向符和管道符;
echo 和注释之间要有空格。
⽰例:
㈣、使⽤goto
注意:注释中不能使⽤goto 指向的标签
⽰例:
㈤、使⽤:注释
注意:注释中第⼀个字符不能是数字或字母;
1
⽰例:
说明:在实际使⽤中,例如标签 :stsrt ,我们也可以认为他是注释。如下例:
:: ArgParse.bat - Parser of command line arguments
:: Will Sort - 2005-11-26 - WinXP_CMD/MSDOS7.10/MSDOS6.22 @echo off
:Init
for %%e in (directory_i directory_o filter_f filter_v log) do set %%e=
:ParseLoop
if "%1"=="" goto Start
for %%s in (i I f F v V l L o O) do if "%1"=="/%%s" goto Switch%%s echo Error: Invalid switch '%1'!
goto Quit
:
SwitchI
if "%directory_i%"=="" set directory_i=%2
goto NextArg
:SwitchO
if "%directory_o%"=="" set directory_o=%2
goto NextArg
:SwitchF
if "%filter_f%"=="" set filter_f=%2
goto NextArg
:SwitchV
if "%filter_v%"=="" set filter_v=%2
goto NextArg
:SwitchL
if "%log%"=="" set log=%2
goto NextArg
:NextArg
shift
shift
goto ParseLoop
:Start
echo.directory_i %directory_i%
echo.directory_o %directory_o%
批处理文件注释echo.filter_f %filter_f%
echo.filter_v %filter_v%
echo.log %log%
:Quit
for %%e in (directory_i directory_o filter_f filter_v log) do set %%e= :end
㈥、使⽤:标签注释
⽰例:
㈦、使⽤if not exist nul注释注意:注释中不能使⽤重定向符和管道符;
if not exist nul 和注释之间要有空格。
1
⽰例:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论