在bash脚本中,我需要获取整个磁盘的总磁盘大小和当前使用的大小 .
我知道我可以使用此命令获取总磁盘大小而无需root用户:
cat /sys/block/sda/size
此命令将输出设备SDA上的块数 . 将它乘以512,您将获得此设备上的字节数 . 这足以满足总磁盘大小 .
现在为当前使用的空间 . 我希望得到这个 Value 而不是根 . 我可以假设设备名称是SDA . 现在有这个命令: df
我以为我可以使用这个命令,但似乎这个命令只输出当前安装的分区的数据 .
有没有办法在磁盘SDA上使用总空间而不需要root,而不是所有分区都需要挂载?
我们假设以下示例:
/dev/sda1 80GB Linux partition 20GB Used
/dev/sda2 80GB Linux Home partition 20GB Used
/dev/sda3 100GB Windows Parition. 30GB Used
我们假设我的SDA磁盘是如上所述进行分区的 . 但是当我在Linux上时,我的Windows分区(sda3)没有安装 .
df的输出将使我总共使用40 GB,因此它不会占用sda3 .
问题是:有没有办法让我获得70 GB的总空间?#2443875_
2 回答
我认为
stat
命令应该有所帮助 . 您可以从/proc/partitions
获取分区 .示例
stat
命令输出:你可以使用
df
.如果将其与某些
sed
或awk
结合使用,则可以获得所需的值