我需要使用forfiles命令从windows命令提示符生成一个xml。
我不是那么远,但变量包含引号,我不想要它......
这是我当前的命令:
%FF_CMD% /c "cmd /c if @isdir==TRUE echo ^<root^>^<dir^>@fname^</dir^>^</root^>"
结果是:
<root><dir>"DIRNAME"</dir></root>
但我想要这个:
<root><dir>DIRNAME</dir></root>
任何想法?
提前致谢
答案 0 :(得分:7)
您可以创建其他批处理文件,例如“echoxml.bat”。这将允许使用~
表示法来删除引号:
@echo off
echo ^<root^>^<dir^>%~1^</dir^>^</root^>
然后在forfiles中使用批处理文件:
%FF_CMD% /c "cmd /c if @isdir==TRUE echoxml.bat @fname"
编辑:
另一种选择是将forfiles
更改为for
,如果可能,则更改为for /d
(我不知道您在%FF_CMD%
中使用了哪些参数):
@echo off
for /d %%A in (*) do echo ^<root^>^<dir^>%%~A^</dir^>^</root^>