0
我试图逐个地传递文件(我必须点,因为可执行文件一次只接受一个文件)。所以,在我批我已经follwoing:尝试使用批处理文件。没有输出,什么都没有发生
FOR /F %file IN ('dir /b /s *.css') DO CALL myExecutable.exe %file
我看到了在同一个目录下的文件,但没有任何反应,要么显示没有错误。 我在这里错过了什么吗?
我试图逐个地传递文件(我必须点,因为可执行文件一次只接受一个文件)。所以,在我批我已经follwoing:尝试使用批处理文件。没有输出,什么都没有发生
FOR /F %file IN ('dir /b /s *.css') DO CALL myExecutable.exe %file
我看到了在同一个目录下的文件,但没有任何反应,要么显示没有错误。 我在这里错过了什么吗?
您的例子几个错误:
FOR
参数名称是一个字母只CALL
用于调用在现有的批处理文件的另一个批处理文件或子程序,而非可执行文件FOR
参数应该用2%来引用,当在批处理文件中时有了这些考虑的空间,这里是你应该使用正确的命令:
for /f "usebackq delims=|" %%f in (`dir /b /s *.css`) do myexecutable.exe "%%f"
这里的my answer到类似的SO问题,在这里我给使用FOR
更多细节处理目录中的所有文件。
从技术上讲,你不需要'usebackq'在你的特定场景中,但这是一个好习惯。 – 2010-08-11 20:37:37
谢谢你,这使它的工作。除了我不得不排除“usebackq delims = |”。它没有工作,它开始处理'dir''b'作为实际的文件名。一旦它被删除,一切正常。 – 2010-08-11 20:47:19