Bash 脚本:CPU 使用率过高时自动断网并重连
Bash 脚本:CPU 使用率过高时自动断网并重连
本脚本使用 Bash 语言编写,当 CPU 资源使用率超过 95% 持续 5 分钟时,自动断开网络连接 2 分钟,如果 CPU 使用率仍超过 95%,则重复该操作,直到 CPU 使用率低于 95%。
#!/bin/bash
while true
do
cpu_usage=$(top -b -n 1 | grep 'Cpu(s)' | awk '{print $2 + $4}')
if (( $(echo '$cpu_usage > 95' | bc -l) )); then
echo 'CPU usage is high, disconnecting network...'
sudo ifconfig en0 down
sleep 120
sudo ifconfig en0 up
echo 'Network reconnected.'
sleep 300
continue
fi
echo 'CPU usage is normal.'
break
done
解释:
while true:无限循环,直到满足退出条件。cpu_usage=$(top -b -n 1 | grep 'Cpu(s)' | awk '{print $2 + $4}'):获取当前 CPU 使用率。if (( $(echo '$cpu_usage > 95' | bc -l) )); then:判断 CPU 使用率是否超过 95%。sudo ifconfig en0 down:断开网络连接。sleep 120:等待 2 分钟。sudo ifconfig en0 up:重新连接网络。sleep 300:等待 5 分钟。continue:如果 CPU 使用率仍然超过 95%,继续循环。break:如果 CPU 使用率低于 95%,退出循环。
原文地址: https://www.cveoy.top/t/topic/nfAf 著作权归作者所有。请勿转载和采集!