使用批处理文件从指定文件夹中删除零大小的文件

时间:2014-12-17 19:45:44

标签: batch-file

如何使用批处理文件从指定文件夹中删除零大小的文件。 我可以使用以下命令从当前目录中删除 FOR%F IN()DO(IF%~zF LSS 1 DEL%F)

但我想从子文件夹中删除,即 我有以下结构核心/日志/。我的批处理文件是核心,我想从core / logs /目录中删除0个大小的文件 我尝试了以下命令,但它没有用

FOR%F IN(log /)DO(IF%~zF LSS 1 DEL%F)

1 个答案:

答案 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"