如何删除forfilesvariables的引用

我需要使用forfiles命令从Windows命令提示符生成一个XML。

我不是那么远,但variables包含引号,我不希望它…

这里我现在的命令是:

%FF_CMD% /c "cmd /c if @isdir==TRUE echo ^<root^>^<dir^>@fname^</dir^>^</root^>" 

结果是:

 <root><dir>"DIRNAME"</dir></root> 

但我想这个:

 <root><dir>DIRNAME</dir></root> 

任何想法 ?

提前致谢

你可以创建额外的批处理文件,比如说“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^>