1 votes

Obtenir la température du processeur à partir du terminal en utilisant Cygwin ?

J'utilise Cygwin 64 sous Windows 8 et je voudrais utiliser l'interface bash pour obtenir les températures des processeurs (4 cœurs, ainsi que les températures des gpu). Est-ce possible ? J'utilise l'application de surveillance de la température et j'ai cette interface via Rainmaker, mais je voudrais qu'elles soient imprimées dans un fichier texte à des intervalles de mon choix, car je veux tester certains de mes codes et voir comment ils chauffent l'ordinateur.

Des idées ?

1voto

VL-80 Points 4415

La vitesse du ventilateur a une option d'enregistrement. Activez-la dans la configuration. Vous trouverez les fichiers journaux dans le répertoire où Speed Fan a été installé. Dans mon cas, c'était Program Files\SpeedFan\SFLog(date).csv

J'ai installé UnixTools pour Windows. Si je comprends bien Cygwin a le même genre de capacités que UnixTools et vous donne la possibilité d'utiliser des commandes de type Unix dans Windows.

Donc, maintenant nous avons un fichier journal (qui se met à jour une fois toutes les 3 secondes) avec toutes les données que nous voulons. Nous pouvons l'utiliser pour obtenir les dernières valeurs de SpeedFan avec le script suivant :

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}

Tout d'abord, nous définissons la variable mydate comme date actuelle formatée dans le style du journal du ventilateur de vitesse. Nous en aurons besoin pour trouver le dernier fichier journal.

Après cela, nous utilisons la commande queue avec option -n 1 pour obtenir la dernière ligne du fichier (données les plus récentes).

Et nous fournissons cette ligne à la gawk avec l'option {print$2} pour obtenir la deuxième 'colonne' de la ligne, puisque la première 'colonne' est un timestamp.

Ainsi script fera écho à la valeur la plus récente de la deuxième colonne du fichier journal. Si vous avez besoin de plus d'une seule valeur - faites un autre script qui demande la troisième colonne en donnant l'option {print$3} a gawk .

Disons que le fichier journal de SpeedFan a le format suivant :

Timestamp  CPU1_temp  CPU2_temp  MotherBoard_temp  CPUFan_RPM

Vous pouvez avoir 4 scripts - chacun d'entre eux obtiendra une des valeurs (utilisez la fonction gawk 's {print$X} pour déterminer quelle colonne il va lire).

Maintenant, vous pouvez appeler ces scripts à partir d'autres programmes lorsqu'ils ont besoin des relevés de température de SpeedFan.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X