2017-08-14 44 views
1

我使用「DF -h」命令來獲得我的目錄的磁盤空間細節的剩餘磁盤空間,這讓我的反應如下:使用「DF -h」來檢查特定的文件夾

enter image description here

現在我希望能夠通過一些批處理或腳本自動檢查 - 所以我想知道,如果我將能夠檢查磁盤空間只有特定的文件夾,我需要像照片中所示 - 我只應檢查/nas/home它不會超過75%。

我該如何做到這一點?任何幫助?


我的工作至今 -

我使用

DF -h> DiskData.txt

- >此獲取輸出到一個文本

grep「/ nas/home」「DiskData.txt」

- >這給了我輸出 - >

500G 254G 247G 51%/ NAS /家

現在我希望能夠搜索以前的或右附近的 '%' 的數量標誌(在這種情況下爲51)來實現我想要的。

+0

是的,你可以檢查。但是如果超過75%,你想怎麼做? 你可以編寫bash腳本並把它放到crontab中,這樣你就可以自動定期檢查 –

+0

我想實際發送一封超過75%的郵件,但是到目前爲止回聲會做,檢查更新後的問題 – harveySp

回答

1

這個命令會給你/ NAS/home目錄

df /nas/home | awk '{ print $4 }' | tail -n 1| cut -d'%' -f1 

因此,基本上可以用儲存在某些變量的值,然後應用的百分比,如果其他條件。

var=`df /nas/home | awk '{ print $4 }' | tail -n 1| cut -d'%' -f1` 
if(var>75){ 
#send email 
} 
+0

** df/nas/home | awk'{print $ 5}'|尾巴-n 1 |切-d '%' -f1 ** 給出 - _/NAS/home_不** ** 51可以 – harveySp

+0

您提供以下命令 \t \t 'DF/NAS /家' 的輸出 – nagendra547

+0

文件系統1K塊二手可用的使用%安裝在 d2cnas:/ dev_home 524288000 266297856 257990144 51%/ nas/home – harveySp

1

另一變型:

df --output=pcent /nas/home | tail -n 1 | tr -d '[:space:]|%' 

輸出= pcent - 只顯示百分比值(的coreutils => 8.21)

+0

無法正常工作 – harveySp

+0

分享你的輸出 – beliy

+0

版本coreutils? – beliy

0

沒有廣泛的配管的更簡潔的方式可以是:

df -h /nas/home | perl -ane 'print substr $F[3],0,-1 if $.==2' 

返回:51 f或你的例子。

相關問題