直接参考GPT自己写一个,分分钟的事情。
为了实现当网络流量达到预定值时自动关机的功能,可以编写一个简单的Linux脚本。这个脚本将使用 `vnstat` 监控网络流量,并在达到指定阈值时执行关机操作。
以下是一个示例脚本:
1. 首先,确保你已经安装了 `vnstat`。你可以使用以下命令来安装它:
sudo apt-get install vnstat
2. 创建一个新的脚本文件,例如 `monitor_traffic.sh`:
nano monitor_traffic.sh
3. 在文件中添加以下内容:
#!/bin/bash
# 预定的流量阈值(单位:MB)
THRESHOLD=1000
# 获取当前的流量数据
RX=$(vnstat --oneline | awk -F';' '{print $4}' | awk '{print $1}')
TX=$(vnstat --oneline | awk -F';' '{print $5}' | awk '{print $1}')
# 将流量数据转换为MB
RX_MB=$(echo $RX | awk '{print int($1)}')
TX_MB=$(echo $TX | awk '{print int($1)}')
# 计算总的流量
TOTAL_TRAFFIC=$((RX_MB + TX_MB))
# 检查总流量是否超过阈值
if [ "$TOTAL_TRAFFIC" -ge "$THRESHOLD" ]; then
echo "流量达到预定值,系统即将关机..."
sudo shutdown -h now
else
echo "当前流量:$TOTAL_TRAFFIC MB,未达到预定值:$THRESHOLD MB"
fi
4. 保存并关闭文件。
5. 给脚本添加可执行权限:
chmod +x monitor_traffic.sh
6. 你可以通过手动运行脚本来测试它:
./monitor_traffic.sh
为了定期检查流量并执行关机操作,可以使用 `cron` 定时任务来定期运行此脚本。例如,每分钟运行一次:
crontab -e
然后添加以下行:
* * * * * /root/monitor_traffic.sh
请将 `/root/monitor_traffic.sh` 替换为你的脚本的实际路径。
这样,系统将每分钟检查一次网络流量,当流量达到预定值时将自动关机。
附crontab安装教程 https://blog.qnla.com/post/307.html
© 版权声明
THE END
暂无评论内容