使用shell 统计cpu使用率
时间: 2023-05-27 08:07:31 浏览: 102
可以使用top命令来实现统计CPU使用率。在终端中输入以下命令:
```
top -n 1 | awk '/Cpu\(s\)/{print $2}'
```
该命令会输出当前CPU使用率的百分比。可以将该命令加入到脚本中,循环执行以获取实时的CPU使用率。例如:
```bash
#!/bin/bash
while true
do
cpu=$(top -n 1 | awk '/Cpu\(s\)/{print $2}')
echo "CPU使用率:$cpu%"
sleep 1
done
```
该脚本会每秒输出一次当前的CPU使用率。可以使用Ctrl+C来终止该脚本的执行。
相关问题
shell脚本统计所有主机的cpu、内存、硬盘使用率
可以通过远程登录主机并执行命令来获取主机的CPU、内存、硬盘使用率。可以使用以下脚本来实现:
```bash
#!/bin/bash
# 定义主机列表
hosts=("host1" "host2" "host3")
for host in ${hosts[@]}
do
# 获取CPU使用率
cpu_usage=$(ssh $host "top -bn1 | grep 'Cpu(s)' | sed 's/.*, *\([0-9.]*\)%* id.*/\1/'")
# 获取内存使用率
mem_total=$(ssh $host "free -m | awk 'NR==2{print \$2}'")
mem_used=$(ssh $host "free -m | awk 'NR==2{print \$3}'")
mem_usage=$(echo "scale=2;$mem_used/$mem_total*100" | bc)
# 获取硬盘使用率
disk_usage=$(ssh $host "df -h | awk '\$NF==\"/\"{printf \"%s\", \$5}'")
# 输出结果
echo "主机:$host"
echo "CPU使用率:$cpu_usage%"
echo "内存使用率:$mem_usage%"
echo "硬盘使用率:$disk_usage"
echo ""
done
```
该脚本首先定义了一个主机列表,然后通过循环迭代每个主机。在循环中,使用ssh命令远程登录到主机并执行命令来获取CPU、内存、硬盘的使用率。最后输出结果。注意,需要在本地机器上配置好ssh登录免密登录到远程主机的认证。
编写shell脚本统计linux每个用户的cpu和memory使用率
可以使用 `ps` 命令来获取当前系统中所有进程的 CPU 和 Memory 使用情况,并通过 `awk` 命令将结果按照用户进行分类汇总,最后输出每个用户的 CPU 和 Memory 使用率。
以下是一个简单的 Shell 脚本,可以实现统计每个用户的 CPU 和 Memory 使用率:
```bash
#!/bin/bash
# 获取当前所有用户名称
users=$(ps aux | awk '{print $1}' | sort | uniq)
# 遍历每个用户,并统计 CPU 和 Memory 使用率
for user in $users
do
# 统计 CPU 使用率
cpu=$(ps aux | grep "^$user" | awk '{sum += $3}; END {print sum "%"}')
# 统计 Memory 使用率
memory=$(ps aux | grep "^$user" | awk '{sum += $4}; END {print sum "%"}')
# 输出结果
echo "用户 $user 的 CPU 使用率为:$cpu,Memory 使用率为:$memory"
done
```
这个脚本首先使用 `ps` 命令获取当前系统中所有进程的信息,并通过 `awk` 命令将结果按照用户名称进行分类汇总。然后遍历每个用户,再次使用 `ps` 命令获取该用户的进程信息,并使用 `grep` 和 `awk` 命令分别统计该用户的 CPU 和 Memory 使用率。最终输出结果类似于:
```
用户 root 的 CPU 使用率为:0.0%,Memory 使用率为:0.4%
用户 daemon 的 CPU 使用率为:0.0%,Memory 使用率为:0.0%
用户 mysql 的 CPU 使用率为:0.0%,Memory 使用率为:0.3%
```
你可以将这个脚本保存为一个文件,例如 `check_usage.sh`,然后通过 `chmod` 命令赋予执行权限,即可在终端中执行该脚本,如下所示:
```bash
chmod +x check_usage.sh
./check_usage.sh
```
注意:这个脚本需要使用管理员权限才能获取所有进程的信息。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231045021.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![txt](https://img-home.csdnimg.cn/images/20241231045021.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.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/20241231045053.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)