当我在命令提示符中执行下面的代码时,它会执行我想要的操作,但当我将其放入 .bat 文件并尝试执行它时,它不会执行我想要的操作:
for /f %a in ('dir /b *.csv') do for /f "tokens=*" %b in (%a) do echo %b,%a >> all.csv
我错过了什么。还有一种方法可以让它准确地执行其操作,而无需在命令提示符窗口中显示循环中的每个步骤。对不起,我是新手!
最佳答案
在批处理文件中 - 与命令提示符相反 - for
变量需要两个 %% 符号,例如%%a
。
要在执行命令时关闭命令回显,请将以下行放在批处理文件的顶部:@echo off
请注意,前置 @
是抑制命令回显的一种临时方法;在本例中,它用于防止 echo off
本身被回显。
关于batch-file - 命令提示符中的代码在批处理文件中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23070963/