Board logo

标题: [其他] 批处理命令for语句括号中的^|是什么意思? [打印本页]

作者: yoyobye    时间: 2012-1-11 16:45     标题: 批处理命令for语句括号中的^|是什么意思?

见过一个语句会返回当前目录下文件的大小,代码如下:
  1. FOR /F "TOKENS=3,4" %%A IN ('DIR /-C ^|FIND "个文件"') DO ECHO %%A %%B
复制代码
话说|前必须要加^,请问这是为什么?有什么理由吗?谢谢!
作者: find    时间: 2012-1-11 17:28

http://www.bathome.net/viewthread.php?tid=1290&page=2#pid6306
作者: applba    时间: 2012-1-11 17:32

|符号的优先级很高,会把
FOR /F "TOKENS=3,4" %%A IN ('DIR /-C ^|FIND "个文件"') DO ECHO %%A %%B
截断为
FOR /F "TOKENS=3,4" %%A IN ('DIR /-C 和 FIND "个文件"') DO ECHO %%A %%B

你加了以后就不会出现这种问题!

建议楼主多研究一下 特殊功能符号 及转义!
作者: yoyobye    时间: 2012-1-12 09:10

谢谢了!
刚学习批处理,有些小知识不能一下子都学会,看到了不懂又会影响信心,所以很感谢回答的兄弟!
作者: find    时间: 2012-1-12 12:48

回复 4# yoyobye


http://www.bathome.net/viewthread.php?tid=1205#pid25363




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2