使用 'df -h' 检查特定文件夹的剩余磁盘百分比 space

Use 'df -h' to check % remaining disk space of a specific folder

我正在使用“df -h”命令在我的目录中获取磁盘 space 详细信息,它给我的响应如下:

现在我希望能够通过一些批处理或脚本自动执行此检查 - 所以我想知道我是否能够仅针对我关心的特定文件夹检查磁盘 space,因为如图所示 - 我只应该检查 /nas/home 它是否不超过 75%。

我怎样才能做到这一点?有帮助吗?


我目前的工作:

我正在使用

df -h > DiskData.txt

...这输出到文本文件

grep "/nas/home" "DiskData.txt"

... 这给了我输出:

*500G  254G  247G  51% /nas/home*

现在我希望能够搜索“%”符号前面或右边的数字(在本例中为 51)以实现我想要的。

此命令将为您提供 /nas/home 目录的百分比

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

所以基本上你可以在一些变量中使用存储作为值,然后应用 if else 条件。

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

另一个变体:

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

output=pcent - 仅显示百分比值(对于 coreutils => 8.21)

没有大量管道的更简洁的方法可能是:

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

Returns: 51 你的例子。