使用df -h
, awk
, tail
, tr
,如何创建自定义“警报”列,该列应显示 /mnt/hgfs 的以下指示之一:
编辑:这是熬夜。
df |awk -v threshold="75 81 96" -v message="Warning Critical Alarm" -v mnt="/mnt/hgfs" '
BEGIN {n=split(threshold, T); split(message, M)}
$NF == mnt {
for(i=n; i>0; i--)
if(int($5) > T[i]) {print M[i] ":", mnt, "usage:", $5; exit}
print mnt, "usage normal"
}'
split
列表到数组中;获取元素的数量n=split()
i
向后遍历 T(hreshold) 数组,将第五列 (Use%) 与每个值进行比较。如果它更大,则使用 M(essage) 数组的相同值打印一条警告消息,然后在执行其他比较之前退出。新需求解决方案:
df |awk '
NR == 1 {alert="Alert"}
int($5) < 75 {alert=""}
int($5) > 75 {alert="Warning"}
int($5) > 81 {alert="Critical"}
int($5) > 96 {alert="Alarm"}
{printf("%-10s%s\n", alert, $0)}'
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句