Это может быть эквивалентно тому, что использует Gnome и / или lm-sensor, но тогда может и нет. Если честно, я довольно не осведомлен о деталях этой проблемы; в основном я просто знаю, как искать информацию, и знаю, где обычно информация о температуре и как она выглядит.
На моем Dell (ноутбук с процессором Pentium M около 6 лет назад)
$ cat /sys/devices/virtual/thermal/thermal_zone0/temp
напечатает текущую температуру в тысячных градусах Цельсия. Это конкретное место, я думаю, стандартное, хотя есть и другие. Например, он также доступен по адресу /sys/devices/virtual/hwmon/hwmon0/temp1_input
. Я не уверен, если это тот же датчик или нет.
Если это не сработает, вы можете попробовать
$ find /sys -iname "*temp*" -or -iname "*ther*"
для подхода довольно грубой команды (*ther*
будет ловить "термический" и вообще не намного).
Если вы не найдете это таким образом, я думаю, вы могли бы быть грубым отрядом и сделать что-то вроде
$ find /sys/ -type f | while read f; do
if grep -q '^[0-9]\{5\}$' $f
&& (( $(wc -l $f | cut -f 1 -d \ ) == 1 ));
then
echo $f;
fi;
done 2>/dev/null;
который должен распечатать все файлы длиной в одну строку и состоять из 5 цифр, как правило, так выглядят эти псевдофайлы.
Если вы его не нашли, вы можете немного расширить поиск, изменив \{5\}
на \+
чтобы найти любое количество цифр, и / или добавив a .
после 9
в диапазоне символов [0-9]
. Выполнение обоих этих действий позволит вам поймать представления с плавающей точкой, хотя кажется маловероятным, что они будут делать это таким образом.
Я не уверен, насколько полезным будет какой-либо из этих подходов, так как информация может вообще не быть в sysfs (т.е. /sys/...
). Вместо этого вы можете найти его в /proc/
, используя аналогичные методы - но отфильтруйте пронумерованные каталоги и /proc/self
, иначе вы в конечном итоге будете искать метаданные для всех процессов в вашей системе.