如何使用批处理文件从指定文件夹中删除零大小的文件。 我可以使用以下命令从当前目录中删除 FOR%F IN(。)DO(IF%~zF LSS 1 DEL%F)
但我想从子文件夹中删除,即 我有以下结构核心/日志/。我的批处理文件是核心,我想从core / logs /目录中删除0个大小的文件 我尝试了以下命令,但它没有用
FOR%F IN(log /)DO(IF%~zF LSS 1 DEL%F)
答案 0 :(得分:0)
如果您知道当前目录是批处理文件的位置:
for %F in (logs\*) do if %~zF equ 0 del "%F"
如果当前目录可以在任何地方,那么%~dp0
将生成执行批处理脚本的路径:
for %F in ("%~dp0logs\*") do if %~zF equ 0 del "%F"
当我认为OP想要从整个树中删除时,这是最初的答案:
这将删除以当前目录为根的整个树中的所有0个长度文件。
for /r %F in (*) do if %~zF equ 0 del "%F"
您可以通过在/ R选项
之后提供根路径来指定其他根for /r "c:\myRoot\" %F in (*) do if %~zF equ 0 del "%F"