[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

各种编程代码中均有一些语法保留字符,因而也就有所谓的相应“转义字符”的用法,批处理脚本亦然。
外网曾有人对此作过梳理(https://www.robvanderwoude.com/escapechars.php),可能有遗漏,在此编译给诸位仅供参考。

【小结:批处理脚本中的转义字符用法 — 也就是保全那些特殊字符本义(不被转义)的方法】

一。在各种场合,如下字符须用一个 % 前缀以免被转义
% 》%%

二。未被双引号包裹时,如下字符须用一个 ^ 前缀以免被转义
^ 》^^
& 》^&
< 》^<
> 》^>
|  》^|

三。在 for /f...() 的格式表达式和条件表达式中(即使后者已被双引号包裹),如下字符须用一个 ^ 前缀以免被转义
, 》^,
; 》^;
= 》^=
( 》^(
) 》^)

四。在 for /f...() 未用 usebackq 参数时的条件表达式中,如下字符须用一个 ^ 前缀以免被转义
' 》^'

五。在 for /f...() 采用 usebackq 参数时的条件表达式中,如下字符须用一个 ^ 前缀以免被转义
` 》^`

六。在变量延迟开启的语块中,如下字符须用两个 ^ 前缀以免被转义
! 》^^!

七。在 find.exe 的搜索表达式中,如下字符须用一个 " 前缀以免被转义
" 》""

八。在 findstr.exe 的正则匹配表达式中,如下字符须用一个 \ 前缀以免被转义
\ 》\\
[ 》\[
] 》\]
" 》\"
. 》\.
* 》\*
? 》\?
2

评分人数

TOP

回复 8# GNGW

如果cmd.exe有源码公开,玩c/c++的人也许可从中一览无余其中的奥秘...
也许有专业人士用反编译工具拆卸过cmd.exe,但绝大绝大绝大多数人不在其列,也不知道其所为...
商品化软件手册只给用法,不说机理,而常年未予实质性“呵护”的cmd.exe,很难说还有一整套完备详尽的用法手册???
所以,多年来用户和玩家只是将其作为一种“实验性技术工具”,在各地互联网平台互相交流分享探讨各自用法的“是非与成败”...
这条走了几十年凹凸不平的老路只有脚印和前人留下的路标... 没有why? 只有that it is...

TOP

返回列表