Batch file 命令提示符中的代码不';不能在批处理文件中工作

Batch file 命令提示符中的代码不';不能在批处理文件中工作,batch-file,cmd,Batch File,Cmd,当我在命令提示符下执行下面的代码时,它实现了我想要的功能,但当我将其放入.bat文件并尝试执行它时,它就不起作用了: for /f %a in ('dir /b *.csv') do for /f "tokens=*" %b in (%a) do echo %b,%a >> all.csv 我错过了什么。还有一种方法可以让它完全执行它所执行的操作,而无需在命令提示窗口中显示循环中的每个步骤。对不起,我是新手 在批处理文件中-与在命令提示下相反-for变量需要两个%%符号,例如%%a

当我在命令提示符下执行下面的代码时,它实现了我想要的功能,但当我将其放入.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


注意,预先结束
@
是一种特殊的抑制命令回音的方法;在这种情况下,它用于防止回声关闭本身被回声。

这是正确的,谢谢您mklement0。你不知道问题的第二部分吗?还有一种方法可以让它完全执行它所执行的操作,而不必在命令提示符窗口中显示循环中的每一步。再次感谢。我看到了,但自从你第一次修复后就没试过@布莱特林:很高兴听到这个消息。如果此答案解决了您的问题,请单击旁边的大复选标记(您可以在15分钟后接受此答案。自您提出问题以来,此答案已通过)。如果您觉得它至少有帮助,请使用向上箭头向上投票。