我们假设有一个名为app.exe的文件。
dir app.exe
给出:
Volume in drive C has no label.
Volume Serial Number is CAA5-A19C
Directory of C:\Users\Lazy\Downloads\batch
02/06/2015 23:50 20.280.135 app.exe
1 File(s) 20.280.135 bytes
0 Dir(s) 100.233.252.864 bytes free
从这一切我需要文件大小(20.280.135)。理想情况下,应删除名为size.txt的文件,该文件仅包含" 20.280.135",空格和/或新行。其背后的意思是使用该文件(size.txt)作为LaTeX文档中的输入。
如何从dir命令获取文件大小?
答案 0 :(得分:2)
不完全使用10060
命令但您可以从DIR
运行以下命令以获取文件大小
CMD
答案 1 :(得分:0)
尝试类似的东西:
@echo off
Set Size=
Set Log=Size.txt
Set PathApp=C:\Program files\Mozilla Firefox\Firefox.exe
call :filesize "%PathApp%"
echo %Size%
echo %Size% > %Log%
Pause
Start %Log%
::**************************************************************
:: set filesize of 1st argument in %size% variable, and return
::**************************************************************
:filesize
set size=%~z1
Exit /b 0
::**************************************************************
答案 2 :(得分:0)
保存为前。 getFileSize.cmd
并称为
getFileSize.cmd "C:\Users\Lazy\Downloads\batch\app.exe" > size.txt
将生成仅带有虚线文件大小的指定文件,没有空格,回车符或换行符。
@echo off
setlocal enableextensions disabledelayedexpansion
rem Locate file to handle
for %%a in ("%~1") do (
rem Retrieve file size
set "size=%%~za" & if not defined size set "size=0"
rem Include dots in value
setlocal enabledelayedexpansion
for /l %%a in (3 4 35) do if not "!size:~0,-%%a!"=="" set "size=!size:~0,-%%a!.!size:~-%%a!"
rem Output value without new lines
<nul set /p"=!size!"
endlocal
)