2017-02-23 252 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