Ubuntu shell脚本间隔10秒监测cpu超过70的进程并杀掉
时间: 2024-09-08 09:02:09 浏览: 175
在Ubuntu shell脚本中,你可以使用`top`命令实时监控CPU使用情况,并结合`pgrep`、`kill`和`sleep`等命令实现每10秒检查一次是否有任何进程CPU占用超过70%。下面是一个简单的示例:
```bash
#!/bin/bash
while true; do
# 使用top找出所有CPU占用率超过70%的进程ID
cpu_usage=$(top -bn1 | grep "Cpu(s)" | awk '{print $2 + $4}' | cut -d '.' -f 1)
if [[ $(echo "$cpu_usage > 70" | bc) -eq 1 ]]; then
# 如果找到,使用pgrep查找进程名并杀掉
PIDS=$(pgrep -u $(whoami) -x -f 'cpu usage > 70%' | xargs)
echo "Killing processes with high CPU usage (PID: $PIDS)"
# 杀死进程,这里使用SIGKILL信号,因为进程占用高可能会忽略SIGTERM信号
kill -9 $PIDS
fi
# 每10秒检查一次
sleep 10
done
#
相关问题
ubuntu shell脚本 等10秒怎样写
在 Ubuntu Shell 脚本中,您可以使用 `sleep` 命令来让脚本等待一定的时间。要让脚本等待 10 秒钟,您可以在脚本中添加以下行:
```
sleep 10s
```
这将使脚本等待 10 秒钟。您可以将 `10s` 替换为其他时间值(例如 `5s` 表示等待 5 秒钟,`1m` 表示等待 1 分钟,`2h` 表示等待 2 小时,以此类推)。
请注意,在脚本中使用 `sleep` 命令会使脚本阻塞,直到等待时间结束为止。如果您需要在等待期间执行其他操作,您可以将 `sleep` 命令放在后台运行。例如:
```
sleep 10s &
```
这将使 `sleep` 命令在后台运行,脚本可以继续执行其他操作。
ubuntu shell脚本
Ubuntu shell脚本是在Ubuntu操作系统上执行的脚本程序,它们使用bash或其他Linux shell编写。这些脚本可以用来自动化系统管理任务,如创建用户、安装软件、配置网络等。使用这些脚本可以大大简化管理员的工作。
阅读全文