如何在批处理文件中的大量文件上运行特定程序?

时间:2015-01-05 19:18:50

标签: batch-file

有一个名为gmadconv.exe的程序,它接受一个参数,即要转换的文件的名称,不带引号。我试图使用FORFILES循环将每个文件的名称传递给gmadconv.exe,但它会自动插入引号,阻止gmadconv实际工作。如何剪切引号并将结果传递给gmadconv?另外,我是shell脚本的新手,我唯一的编程经验是Java。

我用来提取GMA文件的代码是:

FORFILES /c "gmadconv.exe @file" /m *.gma

另外,我可以访问程序使用的.c文件。

1 个答案:

答案 0 :(得分:0)

如果你绝对不得不避开引号,你可以这样做:

FOR /F "usebackq tokens=* delims=" %A IN (`DIR *.gma /B`) DO gmadconv.exe %A

请注意,这是命令提示符下的一行代码。不需要批处理文件。

如果需要在批处理文件中运行该命令,则为:

FOR /F "usebackq tokens=* delims=" %%A IN (`DIR *.gma /B`) DO gmadconv.exe %%A