How can I check the size of a file in a Windows batch script?
batch-file, filesize
Solution
If the file name is used as a parameter to the batch file, all you need is `%~z1` (1 means first parameter)
If the file name is not a parameter, you can do something like:
@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
)
Problem
I want to have a batch file which checks what the `filesize` is of a file. If it is bigger than `%somany% kbytes,` it should redirect with GOTO to somewhere else. Example: ``` [check for filesize] IF %file% [filesize thing Bigger than] GOTO No echo Great! Your filesize is smaller than %somany% kbytes. pause exit :no echo Um... You have a big filesize. pause exit ```