Mon problème est que, dans Ubuntu 14.10, l'ancien code $ {nvidia temp} ne fonctionne pas, j'utilise ce code à la place: ${execi 60 nvidia-settings -query GPUCoreTemp | Perl -ne 'print $1 if /GPUCoreTemp.*?: (\d+)./;'} °C
Mais ce code indique la température deux fois, pourquoi cela pourrait-il être?
La sortie de nvidia-settings -q gpucoretemp
:
slaci@slaci-comp:~$ nvidia-settings -q gpucoretemp
Attribute 'GPUCoreTemp' (slaci-comp:0.0): 63.
'GPUCoreTemp' is an integer attribute.
'GPUCoreTemp' is a read-only attribute.
'GPUCoreTemp' can use the following target types: X Screen, GPU.
Attribute 'GPUCoreTemp' (slaci-comp:0[gpu:0]): 63.
'GPUCoreTemp' is an integer attribute.
'GPUCoreTemp' is a read-only attribute.
'GPUCoreTemp' can use the following target types: X Screen, GPU.
Essayez votre code/script shell dans un terminal pour voir exactement ce qu’il va générer. Il fournit probablement le double résultat, alors vous pouvez le résoudre dans un terminal.
nvidia-settings -query GPUCoreTemp | Perl -ne 'print $1 if /GPUCoreTemp.*?: (\d+)./;'
Je viens de voir votre Q mis à jour, avec la sortie de nvidia-settings, il imprime la température deux fois pour une raison quelconque. L’un d’eux contient "gpu" qui est facile à saisir avec un grep
pour ne diriger ensuite qu’un seul temp dans votre script Perl
;
nvidia-settings -query GPUCoreTemp| grep gpu | Perl -ne 'print $1 if /GPUCoreTemp.*?: (\d+)./;'
Et si tout est réuni dans le conkyrc, il devrait ressembler à ceci:
${execi 60 nvidia-settings -query GPUCoreTemp| grep gpu | Perl -ne 'print $1 if /GPUCoreTemp.*?: (\d+)./;'} °C
Conky ne doit imprimer que ce que Shell lui renvoie, et tester les codes exec
dans un terminal est plus instructif que de passer par Conky, car il est possible de voir les messages d'erreur ignorés par Conky (je pense qu'il utilise uniquement stdout).
Je n'ai pas nvidia-settings
donc je ne peux pas le tester, mais voici quelques scripts/commandes alternatifs qui devraient renvoyer le temp du GPU; vous devrez examiner le résultat de nvidia-settings
pour déterminer les éléments à rechercher et à couper, s’ils sont modifiés et que ceux-ci ne fonctionnent plus.
nvidia-settings -q gpucoretemp -t
nvidia-smi -a | grep Gpu
nvclock -T
nvidia-settings -q gpucoretemp |grep '):' | cut -d ' ' -f 6,6 | sed -e 's/.\{1\}$//'
nvidia-settings -t -q localhost:0/gpucoretemp