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

[其他] for语句的in ()中使用管道命令为什么要使用转义符

本帖最后由 pcl_test 于 2017-5-9 21:02 编辑

【语法】for中的转义字符
小弟最近看到一段代码,其中()中的参数应该是想拿ipconfig命令的输出当做findstr的输入,然后查找还有字符串“地址”的内容,但是小弟不明白管道命令前为何要加转义字符?
转移字符本来的用意应该是想屏蔽符号的特殊功能而只输出符号本身,但在下面的代码里|应该是当做管道命令使用而不是当一个普通的符号,所以小弟就弄不明白为何在这里要加转移字符。
如果去掉这个转义字符执行会报错“此处不应该有|”
for /f "delims=" %%a in ('ipconfig^|findstr /i "地址"') do set var=%%a

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

预处理机制的问题
看管理兄的链接

TOP

谢谢楼上两位指点,800年前的帖子都翻出来了,太牛逼了

TOP

回复 4# riscrisc


    更有可能的是,这个问题已经被问过800多遍了
测试代码之前请做好备份

TOP

返回列表