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

[文本处理] 批处理for循环中echo无法输出括号?

  1. @echo off
  2. for %%i in ("xp") do (
  3. echo run("C.exe")
  4. )
  5. pause
复制代码


代码片段如上  ,最后输出:  run("C.exe"   无法输出),这是for循环的一个bug吗?

run("C.exe")  前面的"(" 作为了普通字符,后面的")" 被当成特殊字符,封闭"do (".

同样的问题在 if 语句一样存在, echo 输出时 加"^" 符号以示区别.
这不能算是bug,是你的书写方法不对.
  1. @echo off
  2. for %%i in ("xp") do (
  3. echo run^("C.exe"^)
  4. )
  5. pause
复制代码
1

评分人数

TOP

回复 2楼 的帖子

问题解决了  多谢hfq1977

TOP

返回列表