2020/05/31

CPU温度を取得するスクリプトを作成(Linux)

背景


PCでのソフトウェアのヒートランを行った際、CPUの温度をモニタリングする必要があったため、スクリプトを作成した。

記事の目的


CPUの温度を取得するスクリプトを作成する

lm-sensors


ここでは、CPUの温度を取得するスクリプトの記述方法について記載する。

必要パッケージの導入

CPUの温度を取得するために必要なパッケージをインストールする
sudo apt install lm-sensors

スクリプトの作成方法

スクリプトの作成方法は以下の通りである。
  1. スクリプトcpu_temperature_monitoring.shを作成する
  2. #!/bin/bash
    echo "Start to record CPU temperature!"
    DIR_NAME=~/cpu_temperature_log/`date +%Y%m%d`
    LOG_NAME=./`date +%Y%m%d_%H%M%S`_cpu_temperature.log
    mkdir -p $DIR_NAME
    cd $DIR_NAME
    echo "Date,Temperature[C]" >> $LOG_NAME
    while :
    do
        sensors | grep "Core 0:" | grep -o [+-][0-9][0-9][.][0-9] | awk '{ "date +\"%Y/%m/%d %T\"" | getline var; print var "," $0 }' >> $LOG_NAME
        sleep 1
    done
    exit 0
  3. スクリプトに実行権限を与える
  4. $ chmod 777 ./cpu_temperature_monitoring.sh 

スクリプトの実行方法

実行方法は以下の通りである。
$ ./cpu_temperature_monitoring.sh
Start to record CPU temperature!
~/cpu_temperature_monitoring_log/日付/にCPU温度のログが作成される
$ less ./cpu_temperature_log/20190923/20190923_234227_cpu_temperature.log
Date,Temperature[C]
2019/09/23 23:42:27,+51.0
2019/09/23 23:42:28,+51.0
2019/09/23 23:42:29,+51.0
2019/09/23 23:42:30,+52.0

備考

  • grepで特定の文字列だけを抽出するオプションは、-o

まとめ


  • CPUの温度を取得するスクリプトを作成した

参考文献



変更履歴


  1. 2020/05/31: 新規作成

0 件のコメント:

コメントを投稿

MQTTの導入

背景 IoTデバイスの接続環境構築のため、MQTT(mosquitto)の導入を行った。 記事の目的 MQTT(mosquitto)をUbuntuに導入する mosquitto ここではmosquittoについて記載する。 MQTT MQTT(Message Qu...