【发布时间】:2016-01-21 13:28:45
【问题描述】:
我使用this 问题来获取磁盘大小信息。 我对批处理编程很陌生,所以请耐心等待。
@echo off & setlocal ENABLEDELAYEDEXPANSION
SET "volume=C:"
FOR /f "tokens=1*delims=:" %%i IN ('fsutil volume diskfree %volume%') DO (
SET "diskfree=!disktotal!"
SET "disktotal=!diskavail!"
SET "diskavail=%%j"
)
FOR /f "tokens=1,2" %%i IN ("%disktotal% %diskavail%") DO SET "disktotal=%%i"& SET "diskavail=%%j"
(ECHO(Information for volume %volume%
ECHO(TOTAL SIZE ---------- %disktotal:~0,-9% GB
ECHO(AVAILABLE SIZE ------- %diskavail:~0,-9% GB)
pause
结果是这样的:
Information for volume C:
TOTAL SIZE ---------- 240 GB
AVAILABLE SIZE ------- 135 GB
我现在如何通过从总大小中减去可用大小来计算已用磁盘空间?我知道我必须使用SET 命令和/A 但我不知道如何正确实施。
【问题讨论】:
-
使用
SET /A从另一个变量中减去一个变量。 -
对不起,我完全不明白。你怎么做到这一点?也许您可以发布答案建议?
-
另外,如果有人能告诉我为什么我在这个问题上得到负面评价。我已经进行了研究,我已经设法解决了问题的某些部分,并且我已经正确解释了。
-
在您的问题上下文中(获得已用 磁盘空间),您似乎没有进行任何研究。你甚至没有谷歌如何使用
set命令,它会告诉你如何使用/a标志。 -
感谢您告诉我。我实际上做了很多研究,我找到了一些信息,但我不确定如何使用这些信息。
标签: windows batch-file command-line