Speed Fan имеет опцию регистрации. Включите его в конфигурации. Вы найдете файлы журналов в каталоге, где был установлен Speed Fan. В моем случае это были Program Files\SpeedFan\SFLog(date).csv
Я установил UnixTools для Windows. Если я правильно понимаю, Cygwin
обладает теми же возможностями, что и UnixTools
и дает вам возможность использовать Unix-подобные команды в Windows.
Итак, теперь у нас есть файл журнала (который обновляется раз в 3 секунды) со всеми данными, которые мы хотим. Мы можем использовать его для получения последних значений из SpeedFan с помощью следующего скрипта:
for /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c%%a%%b)
tail -n 1 "C:\Program Files\SpeedFan\SFLog%mydate%.csv" | gawk {print$2}
Сначала мы устанавливаем переменную mydate
как текущую дату, отформатированную в стиле журнала Speed Fan. Нам понадобится найти последний файл журнала.
После этого мы используем команду tail с опцией -n 1
чтобы получить последнюю строку файла (самые последние данные).
И мы передаем эту строку команде gawk с параметром {print$2}
чтобы получить второй «столбец» строки, поскольку первый «столбец» является меткой времени.
Таким образом, скрипт будет отображать самое последнее значение второго столбца файла журнала. Если вам нужно больше, чем одно значение - создайте другой скрипт, который запрашивает третий столбец, задав опцию {print$3}
для gawk
.
Допустим, файл журнала SpeedFan имеет следующий формат:
Timestamp CPU1_temp CPU2_temp MotherBoard_temp CPUFan_RPM
Вы можете иметь 4 сценария - каждый из них получит одно из значений (используйте опцию gawk
{print$X}
чтобы определить, какой столбец он будет читать).
Теперь вы можете вызывать эти скрипты из других программ, когда им нужны показания температуры из SpeedFan.