编写shell脚本,周期输出CPU占用率排名前10的进程信息到文件中
时间: 2024-05-03 11:19:06 浏览: 69
可以使用以下脚本实现:
```shell
#!/bin/bash
# 定义输出文件路径
output_file="/tmp/top10_cpu_processes.txt"
while true
do
# 获取 CPU 占用率排名前 10 的进程信息
top_output=$(ps -eo pid,user,%cpu,command --sort=-%cpu | head -n 11)
# 将信息输出到文件
echo "$top_output" > "$output_file"
# 等待 5 秒继续执行
sleep 5
done
```
脚本会不断循环执行,每次循环会获取 CPU 占用率排名前 10 的进程信息,并将其输出到指定文件中。可以通过修改 `output_file` 变量来指定输出文件的路径。脚本会每隔 5 秒执行一次,可以通过修改 `sleep` 命令的参数来调整循环间隔时间。
相关问题
编写shell脚本,周期输出CPU占用率排名前10的进程信息到文件中 请提交shell 代码和执行结果。
以下是一个实现周期输出CPU占用率排名前10的进程信息到文件的shell脚本:
```shell
#!/bin/bash
# 定义输出文件路径和时间间隔
OUTPUT_FILE="/path/to/output/file"
SLEEP_TIME=5
while true
do
# 获取当前 CPU 占用率排名前10的进程信息,并写入输出文件
ps aux --sort=-%cpu | head -n 11 > $OUTPUT_FILE
# 等待指定时间间隔
sleep $SLEEP_TIME
done
```
脚本的逻辑很简单,就是一个死循环,每次循环中获取当前 CPU 占用率排名前10的进程信息,并写入输出文件中,然后等待指定的时间间隔,以便下一次循环执行。
执行结果可能类似如下:
```
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 4571 17.8 2.8 1465680 449580 ? Sl 2021 285:13 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
root 8808 3.5 0.0 12580 1912 pts/0 R+ 10:35 0:00 ps aux --sort=-%cpu
root 1945 2.7 0.8 1012504 142660 ? Ssl 2021 80:11 /usr/bin/containerd
...
```
每5秒钟输出一次,输出到指定文件路径中。
编写shell脚本,周期输出CPU占用率排名前10的进程信息到文件中请提交shell代码和执行结果。
以下是一个周期输出CPU占用率排名前10的进程信息到文件的shell脚本:
```bash
#!/bin/bash
while true; do
ps -eo pid,pcpu,comm --sort=-pcpu | head -n 11 > top10_cpu_processes.txt
sleep 10
done
```
该脚本会循环执行以下操作:
1. 使用`ps`命令获取当前正在运行的所有进程的PID、CPU占用率和进程名,并按照CPU占用率进行降序排序。
2. 取前11行(其中第一行为表头),也就是CPU占用率排名前10的进程信息。
3. 将这些信息输出到`top10_cpu_processes.txt`文件中。
4. 等待10秒钟后再次执行以上操作。
因此,该脚本会周期性地记录CPU占用率排名前10的进程信息,以便我们能够及时发现CPU占用率较高的进程并进行优化或调整。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)