
我一直在尋找一個命令,可以為我提供整個硬碟(驅動器)的可用空間、已使用空間和空間利用率百分比。不幸的是,我可以在網路上找到的大多數答案都涉及分割區, 不是驅動器。
(不確定是否相關,但我使用 Ubuntu,並且需要在 14.04 和 18.04 上使用此命令)
問題是這樣的:
1)df -h
僅提供有關分區的信息,而不是整個驅動器的信息 - 並包括內存中的文件系統tmpfs
,例如我不需要的:
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 788M 2.2M 786M 1% /run
/dev/sdb6 59G 53G 3.3G 95% /
tmpfs 3.9G 183M 3.7G 5% /dev/shm
tmpfs 5.0M 8.0K 5.0M 1% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/loop0 112M 112M 0 100% /snap/dotnet-sdk/63
...
tmpfs 788M 20K 788M 1% /run/user/121
tmpfs 788M 64K 788M 1% /run/user/1000
/dev/sda1 230G 217G 1.4G 100% /media/testpart1
/dev/sda2 230G 150G 69G 69% /media/testpart2
只是為了好玩,嘗試明確指定/dev/sda
for df
- 但這不起作用:
$ df -h /dev/sda
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
……因為它給了我安裝的尺寸udev
。
2)du -hs /
適用於目錄 - 所以它還包括 USB 驅動器或我可能安裝在下面的任何其他驅動器/media
3)lsblk
列出磁碟和對應的分割區,但僅列出總可用大小/空間,不列出已使用空間或百分比(也包括 tmpfs 等,但可以透過在參數中針對磁碟的裝置節點來抑制):
$ lsblk /dev/sda
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 232.9G 0 part /media/testpart1
└─sda2 8:2 0 232.9G 0 part /media/testpart2
所以,我的問題是 - 如何找到單一硬碟的總可用大小/空間、已使用大小/空間(以人類可讀的單位,例如 MB、GB 等)以及使用率/利用率百分比(包括使用率)其所有分割區)使用單一Linux 命令列- 不受tmpfs 或其他安裝系統(如USB 拇指驅動器)的干擾?