需要一个cmd命令才能在批处理文件中使用它,以便在删除.txt格式的某些文件夹之前和之后获取C驱动器上的可用磁盘空间,或者需要知道特定文件夹的空间并将其导出到.txt文件夹中
答案 0 :(得分:0)
由于cmd.exe的set /A
- 数学仅限于有符号的32位整数,因此在空4TB驱动器上计算可用空间时可能会遇到麻烦。解决方法是使用PowerShell进行计算。
@Echo off
For /f "tokens=2 delims==" %%A in (
'wmic logicaldisk where "DeviceID='C:'" get FreeSpace /format:value'
) Do Set FS1=%%A
:: Delete something
Del /F /A /Q /S "%tmp%\*" >Nul 2>&1
For /f "tokens=2 delims==" %%A in (
'wmic logicaldisk where "DeviceID='C:'" get FreeSpace /format:value'
) Do Set FS2=%%A
set FS
:: Let PowerShell do the calculating
powershell.exe "\"{0,10} GB freed\" -f [math]::round(($env:FS2-$env:FS1)/(1GB),2)"
示例输出:
FS1=87454994432
FS2=85188575232
2,11 GB freed