なんとなくarchlinuxでCPUの温度をとってくる
プログラムをpython3で書いてみた
温度は/sys/class/hwmon/hwmon2/temp4_inputからほぼ一秒ごと(sleep(1))でとってきています
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import sys
import time
print("###cputemp###")
def timing():
while True:
with open('/sys/class/hwmon/hwmon2/temp4_input') as t:
for temp_date in t:
t = int(temp_date.strip()) / 1000
sys.stdout.write("\r{}".format(t) + "C ")
sys.stdout.flush()
time.sleep(1)
if __name__ == '__main__':
timing()
ターミナルに出力しますが無限ループですのでctrl+cかターミナルを終了で終了です
えくすとらんは素人ですので実行によって起こったいかなるトラブルにも
対応できませんのであしからず
実行はプログラムをメモ帳にコピペ実行権を与えて端末で実行です
追記
CPUによって/sys/class/hwmon以下の構造がちがうようですのでtemp*_inputを
探してopen()に配置します
えくすとらんのcpuはcore2qとペンティアムDでしたので
ペンティアムDマシンのほうは/sys/class/hwmon/hwmon1/temp1_input
から取っています
ただhwmon以下のtempの値がたくさんありどれをとれば一般的なCPU温度
なのかがわからないため(調べてもいないです)
なんとなくこれくらいの温度であろう数値のあるファイルをえらんでいます
のであしからず
プログラムをpython3で書いてみた
温度は/sys/class/hwmon/hwmon2/temp4_inputからほぼ一秒ごと(sleep(1))でとってきています
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import sys
import time
print("###cputemp###")
def timing():
while True:
with open('/sys/class/hwmon/hwmon2/temp4_input') as t:
for temp_date in t:
t = int(temp_date.strip()) / 1000
sys.stdout.write("\r{}".format(t) + "C ")
sys.stdout.flush()
time.sleep(1)
if __name__ == '__main__':
timing()
ターミナルに出力しますが無限ループですのでctrl+cかターミナルを終了で終了です
えくすとらんは素人ですので実行によって起こったいかなるトラブルにも
対応できませんのであしからず
実行はプログラムをメモ帳にコピペ実行権を与えて端末で実行です
追記
CPUによって/sys/class/hwmon以下の構造がちがうようですのでtemp*_inputを
探してopen()に配置します
えくすとらんのcpuはcore2qとペンティアムDでしたので
ペンティアムDマシンのほうは/sys/class/hwmon/hwmon1/temp1_input
から取っています
ただhwmon以下のtempの値がたくさんありどれをとれば一般的なCPU温度
なのかがわからないため(調べてもいないです)
なんとなくこれくらいの温度であろう数値のあるファイルをえらんでいます
のであしからず
0 件のコメント:
コメントを投稿