标题: [文本处理] [已解决]批处理for语句第二个括号里面的命令行如果带有()要怎么处理? [打印本页]
作者: fcymk2 时间: 2011-8-31 14:06 标题: [已解决]批处理for语句第二个括号里面的命令行如果带有()要怎么处理?
本帖最后由 fcymk2 于 2012-11-7 14:45 编辑
for %%i in (XXX) do(...)
现在do 里面有好几条命令, 命令都是带()的, 如果do也带()的话, 就冲突了,命令无法执行, 如果do后面不带()的话, 只能执行一条语句.
要怎么处理才能让 do后面的() 和命令里面的()不冲突?
作者: 601997526 时间: 2011-8-31 14:43
- for /l %%i in (1 1 10) do (if %%i==5 (echo aaa) else (echo b))
复制代码
你看看这个for里面不就有括号吗,楼主还是发个你写的代码来看看问题到底是出在哪了
作者: raymai97 时间: 2011-8-31 14:44
在(和)前加上一个^:- for %%i in (a b c) do (
- echo ^(LKL^)
- echo ^(OOO^)
- echo ^(%%i^)
- pause>nul
- )
复制代码
作者: sforiz 时间: 2011-8-31 23:38
注意换行与成对出现就不会出问题了
作者: fcymk2 时间: 2012-11-7 14:15
回复 3# raymai97
感谢, 加上^后就正常了.....原先在这发完帖子后都忘了@_@ 后来一直是在语句后面 加 & 把2条语句连起来用的...
附上原先 不用^ 的时候出错的语句for %%i in (%file_c%) do (%C51BIN%\C51.EXE %srcdir%\%%i.c %option1% PRINT(%lstdir%\%%i.lst) OBJECT(%lstdir%\%%i.obj))
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |