Ubuntu shell脚本间隔10秒监测cpu超过70的进程并杀掉
时间: 2024-09-08 10:02:09 浏览: 147
在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操作系统中编写的脚本语言,用于执行一系列命令和操作。它是一种命令行脚本,通常以“.sh”为扩展名,可以在终端或控制台中运行。Shell脚本允许用户编写自动化脚本和任务,如系统维护、数据处理和文件管理等。常见的Ubuntu Shell脚本包括Bash、Zsh和Fish等。
以下是一个简单的Ubuntu Shell脚本示例:
```
#!/bin/bash
# This is a simple script that prints "Hello, World!" to the console.
echo "Hello, World!"
```
这个脚本使用Bash shell编写,它告诉系统使用Bash来执行脚本,并在终端上输出“Hello, World!”。要运行此脚本,将其保存为“hello.sh”文件,然后在终端上输入以下命令:
```
chmod +x hello.sh # 添加执行权限
./hello.sh # 执行脚本
```
这将使脚本可执行,并在终端上输出“Hello, World!”。
阅读全文