僅取得已安裝檔案系統的大小

僅取得已安裝檔案系統的大小

我只想取得已安裝檔案系統的總大小。但問題是我只知道掛載點。於是,我想到了使用df指令。

為了取得已安裝檔案系統的大小,我執行了以下命令:

df --output=target,size | grep -w /mnt/xyz

我得到的結果是這樣的:

/mnt/xyz             4339044

我知道如何使用,cut但這裡沒有用,因為我不知道字串和整數之間的空格。有沒有辦法在終端機上列印這個尺寸?

答案1

您可以在沒有以下內容的情況下做到這一點grep

df --output=target,size /mnt/xyz | awk ' NR==2 { print $2 } '

df接受安裝點作為參數;您可以告訴 toawk僅列印第二行 (NR==2) 和第二個參數 $2。

或者更好的是,在不輸出目標時剪切目標,它會變成:

df --output=size /mnt/xyz | awk ' NR==2 '

當我還是個初學者時,我也確實設法cut使用(擠壓)來減少冗餘空間來繞過限制tr -s " ",如下所示:

df --output=target,size /mnt/xyz | tail -1 | tr -s " " | cut -f2 -d" "

答案2

還有一個findmnt命令,它可以列印位元組數或「人類」數字(不幸的是,帶有非 iso 縮寫的 1024 的冪):

$ findmnt -no size /mnt/xyz
 9.7G
$ findmnt -bno size /mnt/xyz
10434699264

相關內容