LinuxでCPU使用率を確認するスクリプト

LinuxでCPU使用率を確認するスクリプト

1分あたりのCPU消費量を表示し、ファイルに保存するbashスクリプトが必要です。

出力は次のとおりです。

11/09/2015 10:00: CPU: 60%
11/09/2015 10:01: CPU: 72%
11/09/2015 10:02: CPU: 32%

待って...誰が助けることができますか?

#sar >> Result.txtを使用してこれを実行できますが、15分ごとに1分ではなく結果が表示されます。この問題を解決する方法を知っている人はいますか?

答え1

これをシステムのどこか(例:/ opt)のbashスクリプトに入れます。

#!/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

次に、/etc/cron.d/の下に次の内容でcpu_usageというファイルを作成します。

*/1 * * * * root /opt/your_script.sh

これは、毎分スクリプトを実行し、指定されたファイルの新しい行にCPU使用率をパーセント形式で出力する必要があります。

答え2

*/1 * * * * prstat -Z|head -18|tail -1|awk '{print$7}'>filename.txt

関連情報