中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 17:46
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 外部程序调用cmd.exe /c时引号怎么处理 查看 931 回复 1
楼 主 外部程序调用cmd.exe /c时引号怎么处理 发表于 2010-02-18 17:55 ·  中国 江西 吉安 电信
中级用户
★★
积分 253
发帖 112
注册 2006-05-31 11:12
20年会员
UID 56308
性别 男
状态 离线
如题;
我有一个程序,要调用cmd.exe来实现一个功能,如:
for /f "delims=" %%i in ('dir /s /b /a-d D:\") do echo >>E:\test.txt %%i
如改成外部调用似乎是这样
cmd.exe /c "for /f ^"delims=^" %%i in ('dir /s /b /a-d D:\") do echo >>E:\test.txt ^"%%i^""
但试验了一下,失败了.

cmd.exe /c "for /f ^"delims=^" %%i in ('dir /s /b /a-d D:\") do echo >>E:\test.txt ^"%%i^""

改成
cmd.exe /c "for /f %i in ('dir /s /b D:\Kugou') do echo >>%temp%\mkcab.ddf ^"%i^""

则成功.但这样一来就处理不了带空格的文件名.

高手们来帮帮忙>>???
2 发表于 2010-02-20 09:27 ·  中国 北京 中电华通通信有限公司
高级用户
★★★
据说是李先生
积分 609
发帖 400
注册 2008-04-23 15:55
18年会员
UID 116706
性别 男
状态 离线
直接写就行

cmd /c for /f "delims=" %i in ('dir /s /b /a-d "D:\"') do (echo>>E:\test.txt %i)
┏━━━━━━┓
┃据说是李先生┃
┠──────┨
┃*ntRSS┃
┗━━━━━━┛
论坛跳转: