如何在批处理中检查文件是否为空

lag*_*lex 14 windows batch-file

google有几种方法可以检查文件是否为空,但我需要做相反的事情.

If (file is NOT empty)

do things
Run Code Online (Sandbox Code Playgroud)

我怎么批量做?

Bal*_*i C 21

for /f %%i in ("file.txt") do set size=%%~zi
if %size% gtr 0 echo Not empty
Run Code Online (Sandbox Code Playgroud)


ris*_*ess 8

这应该工作:

for %%R in (test.dat) do if not %%~zR lss 1 echo not empty
Run Code Online (Sandbox Code Playgroud)

help if说你可以NOTif反转比较语句之后直接添加


Dav*_*ant 5

set "filter=*.txt"
for %%A in (%filter%) do if %%~zA==0 echo."%%A" is empty
Run Code Online (Sandbox Code Playgroud)

键入help for命令行以获取有关〜zA部分的说明