我想合并所有驱动器的总可用存储空间和已用存储空间。 当我使用
lsblk
时,我得到这个结果
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
nvme1n1 259:0 0 1.8T 0 disk
├─nvme1n1p1 259:2 0 4G 0 part [SWAP]
├─nvme1n1p2 259:3 0 1G 0 part /boot
└─nvme1n1p3 259:4 0 1.8T 0 part /
nvme0n1 259:1 0 1.8T 0 disk /home2
所以我想合并所有 nvme1n1 和 nvme0n1 所以当我尝试修改时
lsblk -b --output SIZE -n -d
我得到这个结果
1920383410176
1920383410176
但问题是我想合并所有可用的块并以 GB 为单位显示总数
4000 GB
额外的要求是我想显示 GB 中所有硬盘上所有已使用块的总数。
有人可以帮忙吗?
您可以从 sysfs 获取总大小。与 profcs 一起,它基本上是每个用户空间程序使用的接口。
blocks=$(cat /sys/class/block/nvme0n1/size)
size=$(( $blocks * 512 ))
gb=$((size / 1024 / 1024 / 1024))
echo "your disk in GB: $gb"