Windows 如果一行写入多行,如何关闭批处理文件?

Windows 如果一行写入多行,如何关闭批处理文件?,windows,batch-file,command-line,command,command-prompt,Windows,Batch File,Command Line,Command,Command Prompt,我有一个批处理文件,其中包含: cmd /k "cd C:\Files\ && for /r %%F in (*) do if %%~zF=0 del %%F" 这将删除目录中的空文件,但它将检查所有文件,因此它不会占用一行命令,而是占用n个命令,其中n=C:\files\中的文件数,这使我无法使用下一行中的exit命令退出(关闭)CMD,因为它只在1个命令后执行 在这种情况下,运行该命令后如何关闭该命令?谢谢大家! 我重复回答中给出的正确答案,而不是评论,以避免将此问题列为未

我有一个批处理文件,其中包含:

cmd /k "cd C:\Files\ && for /r %%F in (*) do if %%~zF=0 del %%F"
这将删除目录中的空文件,但它将检查所有文件,因此它不会占用一行命令,而是占用n个命令,其中n=C:\files\中的文件数,这使我无法使用下一行中的exit命令退出(关闭)CMD,因为它只在1个命令后执行


在这种情况下,运行该命令后如何关闭该命令?谢谢大家!

我重复回答中给出的正确答案,而不是评论,以避免将此问题列为未回答的问题

通过运行
cmd/?
显示的命令
cmd
的帮助说明了选项
/C
(关闭)和选项
/K
(保持打开)之间的区别

当然,在批处理文件中根本不需要使用命令
cmd
,因为*.bat文件由命令
cmd
解释。因此,批处理文件应该只包含

cd C:\Files\ && for /r %%F in (*) do if %%~zF==0 del "%%F"

要递归删除文件大小等于0字节的所有文件,即空文件。

请使用
cmd/c
而不是
cmd/k
。有关差异,请参见
cmd?
Wow再次向斯蒂芬求助!谢谢,伙计:)当然,@Stephan的意思是说
cmd/?
,而不是
cmd?
(对于那些现在还不知道并且可能感到困惑的人)。谢谢,非常感谢!