2017-08-14 39 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或你的例子。

相关问题