2017-02-23 640 views
0

我想要一个脚本,检查文件大小是否小于1KB。如果是的话,你必须打印你可以复制,否则你显示你不能复制。我不熟悉脚本可以帮助我吗?如何检查文件大小是否超过最大文件大小批量

+0

这些主题已经回答了您的问题:[checking-file-size-in-a-batch-script](http://stackoverflow.com/questions/7881035/checking-file-size-in-a - 批处理脚本) [我怎么能检查大小的文件在Windows批处理脚本](http://stackoverflow.com/questions/1199645/how- can-i-check-the-size-of-a-file-in-a-windows-batch-script) – jirarium

回答

0

如果文件名作为参数传递给批处理文件,你需要的是%〜Z1(1表示第一个参数)

如果文件名不是一个参数,你可以这样做:

@echo off 
setlocal 
set file="test.cmd" 
set maxbytesize=1000 

FOR /F "usebackq" %%A IN ('%file%') DO set size=%%~zA 

if %size% LSS %maxbytesize% (
    echo.File is ^< %maxbytesize% bytes 
) ELSE (
    echo.File is ^>= %maxbytesize% bytes 
) 
+1

1.为什么要做你使用'for/F'?一个标准的for循环是完全正确的:对于%% A在(“%file%”)中设置“size = %%〜zA”'。 2.这对于2 GiB或更大的文件不起作用。 – aschipfl

+0

1KB是1024字节。 – Squashman

+0

增加此限制set maxbytesize = 1000 – Ramkrushna