使用SHELL脚本统计磁盘使用率 大于80%的路径脚本

场景描述

使用pssh命令批量对机器执行df -h检查,需要统计每个IP下的磁盘使用率大于80%的路径

执行结果如下

[1] 00:56:15 [SUCCESS] 192.168.1.1
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   17G  1.8G   16G  11% /
devtmpfs                 898M     0  898M   0% /dev
tmpfs                    910M     0  910M   0% /dev/shm
tmpfs                    910M  9.6M  901M   2% /run
tmpfs                    910M     0  910M   0% /sys/fs/cgroup
/dev/sda1               1014M  146M  869M  15% /boot
tmpfs                    182M     0  182M   0% /run/user/0

[2] 00:56:15 [SUCCESS] 192.168.1.2
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   17G  1.8G   16G  11% /
devtmpfs                 898M     0  898M   0% /dev
tmpfs                    910M     0  910M   0% /dev/shm
tmpfs                    910M  9.6M  901M   2% /run
tmpfs                    910M     0  910M   0% /sys/fs/cgroup
/dev/sda1               1014M  146M  869M  15% /boot
tmpfs                    182M     0  182M   0% /run/user/0
 

实现脚本

#!/bin/bash

input_file="your_input_file.txt"
threshold=10

current_ip=""
while IFS= read -r line; do
  if [[ $line =~ \[[0-9]+\] ]]; then
    current_ip=$(echo "$line" | awk '{print $NF}')
  else
    usage=$(echo "$line" | awk '{gsub("%","",$5); print $5}')
    if [[ $usage -gt $threshold ]]; then
      echo "$current_ip - $line"
    fi
  fi
done < "$input_file"

脚本解释:

your_input_file.txt替换为包含你的文本的文件路径。threshold变量设置为10,表示10%的阈值。

脚本逐行读取文件内容,并使用正则表达式判断是否为IP地址行(以方括号开头)。如果是IP地址行,则将该行最后一个字段保存为current_ip变量的值。如果不是IP地址行,则提取第五列的使用率,并判断是否大于阈值。如果大于阈值,则打印当前IP地址和对应的行内容。

你可以将脚本保存为.sh文件,然后在终端中运行bash your_script.sh来执行脚本。

具体执行

1.将执行的结果放到文本里

这里我保存为zhixing.txt

 

2.修改脚本count.sh 并保存到linux服务器上

 

3.执行脚本

sh count.sh

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值