本帖最后由 cjiabing 于 2012-3-19 01:33 编辑
你可能没见过以下这个被“拆解”的FOR,它是那样熟悉而又陌生!~
下次你需要比较多的注释或显示内容时,不必在每行开头加Rem、::、echo了,使用一个FOR就可以实现注释了。
连分行显示都考虑了!~
.
-
- @echo off
- Rem ::by:cjiabing from:发布于批处理之家 http://www.bathome.net
- Rem 注意:DO后面的命令【echo;%%a】可以改成【Rem;%%a】从而实现注释,也可以改成【set var=%%a】进行赋值等。
- for /f "tokens=*" %%a in ("
- ^&echo. ^ ^ ^&echo. ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ FOR的新功能 ^&echo. ^ ^&echo.^&echo. ^ ^
- 首先,这个FOR的功能正常,tokens和echo;%%a都能正常使用。
- 其次,在注释之前,【不需要】其他命令作为开头。
- 第三,本括号内,需要一对【双引号】将注释内容括住,一个双引号在开头,另外一个在最后一行内容的最后一个字符的后面。
- 第四,注释内容会拼接成一行。
- 第五,注释内单个%可以显示,但使用^^^&"()<>|"会奔溃。转义符和强力双引号可以包裹特殊字符。
- 第六,使用"^&echo;"可以显示分行。"
- ) do set var=%%a
- echo;%var%
- echo;
- pause
- echo;
- for /f "tokens=*" %%a in ('
- echo.^&Title FOR的新功能 ::by:cjiabing from:发布于批处理之家 http://www.bathome.net
- ^&echo;
- 首先,这个FOR的功能正常,tokens和echo;%%a都能正常使用。
- ^&echo;
- 其次,在注释之前,【需要一个echo;】命令作为开头。
- ^&echo;
- 第三,本括号内,需要一对【单引号】将注释内容括住。
- ^&echo;
- 第四,注释内容会拼接成一行。^&echo;
- 第五,注释内单个%可以显示,但使用^^^&"()<>|"会奔溃。转义符和强力双引号可以包裹特殊字符。
- ^&echo;
- 第六,使用"^&echo;"可以显示分行。
- ') do echo;%%a
- echo;
- pause
复制代码
思路来自错误的尝试:http://www.bathome.net/thread-15748-1-1.html |