我想要一个 bash 脚本,它显示每分钟的 CPU 消耗并将其保存在一个文件中。
输出将是这样的:
11/09/2015 10:00: CPU: 60%
11/09/2015 10:01: CPU: 72%
11/09/2015 10:02: CPU: 32%
Run Code Online (Sandbox Code Playgroud)
等等... 有人可以帮助我吗?
我可以用 #sar >> Result.txt 来完成,但它每 15 分钟而不是每分钟显示一次结果。有谁知道如何解决这一问题?
Hug*_*ugh 13
将其放入系统某处的 bash 脚本中(例如 /opt):
#!/bin/bash
CPU_USAGE=$(top -b -n2 -p 1 | fgrep "Cpu(s)" | tail -1 | awk -F'id,' -v prefix="$prefix" '{ split($1, vs, ","); v=vs[length(vs)]; sub("%", "", v); printf "%s%.1f%%\n", prefix, 100 - v }')
DATE=$(date "+%Y-%m-%d %H:%M:")
CPU_USAGE="$DATE CPU: $CPU_USAGE"
echo $CPU_USAGE >> /opt/cpu_usage.out
Run Code Online (Sandbox Code Playgroud)
然后在 /etc/cron.d/ 下创建一个名为 cpu_usage 的文件,其中包含以下内容:
*/1 * * * * root /opt/your_script.sh
Run Code Online (Sandbox Code Playgroud)
这应该每分钟执行一次脚本,并在指定文件中的新行中以百分比格式输出 CPU 使用率。
| 归档时间: |
|
| 查看次数: |
42311 次 |
| 最近记录: |