Page 2 sur 3

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : mer. 23 mai 2018 14:12
par tioker

Dernier message de la page précédente :

Ah oui, j'oubliais. Il y a aussi les vrais logiciels de supervision, genre Nagios. Mais c'est peut-être un peu lourd....
Image

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : mer. 23 mai 2018 14:53
par arghlub
Bon pour les notifs, je répondais surtout à toi, car cela ne semble pas intéresser Alain (je l'ai su en conversation privée).

Cependant, KDE4 + notify-send marche très bien à mon goût (je viens de tester en VM).

On va attendre le retour d'Alain (je sais qu'il ne bosse pas cette nuit donc il va enfin pouvoir tester nos "délires") ;)

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : mer. 23 mai 2018 19:50
par alain
Bonjour Tioker et Arghlub, Cyrille.

Je n'ai pas encore essayé les scripts proposés, promis je fais ça dans la nuit. ;)

@Tioker les logiciels de supervision sont parfait pour surveiller un pc ou un parc, mais comme pour les applets ou gkrellm il faut que le capteur soit
reconnu par lmsensors (sensors-detect) ou carrément d'origine suite a l'installation d'un pilote (ex Nvidia) mon soucis au départ c'est justement que ce capteur n'est pas reconnu, alors le logiciel de supervision ne le verra pas plus... Merci pour "notify-send" je ne connaissais pas, sur que ça pourra me servir pour une autre application.

@Tous. Je ne suis pas chaud pour avoir une notification ou une fenêtre qui s'ouvre et se ferme toutes les 10 s. Mon souhait c'est d'avoir une fenêtre fixe avec la valeur
qui change à l'intérieur toutes les x secondes...

merci pour vos propositions ;)

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : mer. 23 mai 2018 21:13
par arghlub
@cyrille : d'après ce que j'ai compris il faut que le process' qui affiche cette température soit le plus léger possible pour laisser la part belle à d'autre process' (Boinc)
... donc un conky juste pour ça .... mouais un chouia lourdingue .... ;)

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : mer. 23 mai 2018 21:33
par arghlub
;) Cyrille

Mais y'a qu'Alain qui pourra tester tout ça sur sa bécane et selon ses goûts en KDE4 ...
.........
Au travail l'ami Alain ! :ugeek: :)

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : mer. 23 mai 2018 23:39
par tioker
alain a écrit :Mon souhait c'est d'avoir une fenêtre fixe avec la valeur qui change à l'intérieur toutes les x secondes...
J'ai testé un truc notify-send mais il ne marche pas :roll: .
Normalement, si je boucle toutes les 10 secondes et que je mets un timeout de 10 secondes (-t 10000) sur ma notification, ça fait comme si ça rafraîchissait ... Et bien non. Pourquoi ? Parce que ce post. En fait y'aurait un problème avec Cinnamon. Mais si on utilise un autre bureau... C'est pour ça que j'en parle.
Commande pour tester

Code : Tout sélectionner

notify-send -t 10000 "Titre de la notification..." "... et son détail"
Sinon un lien vers des détails commentés de la commande.

@Alain --> bonne nuit !

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : mer. 23 mai 2018 23:44
par zeb
tioker a écrit :@Alain --> bonne nuit !
:l Alain est un hibou, souhaite lui bonne nuit demain matin ;) :lol:

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : jeu. 24 mai 2018 06:52
par alain
Hello tous Image

Résultats des tests effectué avec Arghlub cette nuit:

1) le script avec la boucle infini ET zenity, ne me convient pas car bien entendu ouverture/fermeture de la fenêtre toutes le x secondes.
2) Idem pour celui avec zenity --notification, ça ouvre une notification toutes les x secondes.
Au passage la syntaxe : zenity --notification --window-icon="info" --text="Température GPU\n"$tempGPU ne fonctionne pas dans le cas ou
la variable "tempGPU" est le résultat de ma commande, en revanche elle fonctionne si on lui donne une valeur... Pb contourné en pipant un echo de la variable
sur zenity .
3) Essais avec la proposition d'utiliser notify-send comme suit : "notify-send -t 10000 "Titre de la notification..." "... et son détail" . ça Fonctionne, mais qu'une fois...
(c'est donc la même chose sur KDE4 que sur Cinnamon)
4) Essais d'un mix notify-send plus boucle infinie: Bingo ! la notification s'affiche, reste et le texte est rafraîchi toutes le x secondes.
Ce qui donne:

Code : Tout sélectionner

#!/bin/bash
# Version5 : Afficher dans une notification rafraîchie toutes les 5 secondes
while [ 1 ]
do
    tempGPU=$(aticonfig --od-gettemperature)
    notify-send "tempGPU" "$tempGPU" 
    sleep 5
done
Voila ça pourrait être le pied si la température était affichée...Car la fenêtre de notification est trop petite pour afficher tout le texte du résultat de ma commande.
Image
Donc ce qu'il faudrait, c'est soit agrandir la fenêtre de notication afin d'afficher tout le texte. mais je n'ai pas trouver comment faire sur KDE..
Soit de supprimer de la variable "tempGPU" tout le texte qui ne me sert à rien (default addaptater -Supported device 6781 Sensor 0) pour ne garder
que la valeur de la température. Et la ça devrait largement passer dans la fenêtre de notification.
Alors vous avez compris quel est le nouveau challenge pour vous :D
J'ai bien chercher à filtrer, tronquer le résultat de ma commande «aticonfig --od-gettemperature» avant de l'affectée à la variable "tempGPU".
Mais mon très faible niveau en bash ne m'a pas permit de réussir :roll:

Bonne journée à vous, et un premier merci pour m'avoir permis d'en arriver la et un second, d'avance, à ceux qui vont se pencher sur ce problème de retour
de commande trop long .

Image

PS: @Cyrille, fancontrol tout comme lm-sensor ne détectent pas ma carte graphique ATI R9 290. Contrairement à mes carte Nvidia où ça fonctionne très bien.
Pour lire la température et régler la vitesse du ventilateur je suis obligé de passer par des commandes, d'où l’existence de ce sujet. Si lm-sensor et fancontrol avaient
fonctionné pour cette carte, je ne me serai pas embêté à faire un script...

PS2: C'est bon j'ai réussi a tronquer le resultat de la commande et la température est affichée dans la notification :
Image
j'ai modifier la ligne de la variable comme suit:

Code : Tout sélectionner

tempGPU=$(aticonfig --od-gettemperature | grep  Temperature)

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : jeu. 24 mai 2018 09:10
par tioker
Bonjour,

Une piste pour extraire l'élément qui va bien ? A noter que je crois qu'IFS ne sait traiter QUE des caractères uniques de séparation.

Code : Tout sélectionner

#       Je définit une variable
Variable="Voici mon texte, blablabla ; a suivre" 
#       Je change mes caractères standards de séparation
IFS=",;"
#       Je mets ma variable dans un tableau
Tab=($Variable)
#       Je vais chercher le 2ème élément du tableau 
echo "L'élément entre séparateurs est ${Tab[1]}"
L'élément entre séparateurs est  blablabla 
Sinon, j'ai l'impression que notre petite équipe est du type Follow The Sun

Bonne journée ;)

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : jeu. 24 mai 2018 09:45
par alain
Salut Tokier.

D'abord merci, pour l'idée d'uliser notify-send ;)
Ensuite , intéressante cette manipe du tableau, il faudra que je teste ça...
tioker a écrit : Sinon, j'ai l'impression que notre petite équipe est du type Follow The Sun
Pourquoi? tu es sur quel fuseau horaire toi?
Moi je serai plutot "run away the sun" :D

Re: comment automatiser un retour de commande dans une fenêtre zenity?

Posté : jeu. 24 mai 2018 12:39
par arghlub
Salut Alain ;)
alain a écrit :Résultats des tests effectué avec Arghlub cette nuit
;) Tu m'as fait traîner cette nuit .... c'est pas dans mes habitudes de jouer au hibou :l .... :? :lol: :lol:
Alors, pour filtrer la température dans la sortie de ta commande, ça devrait pas être compliqué. On pourrait par exemple faire ça avec “awk”.

La sortie de ta commande :

Code : Tout sélectionner

aticonfig --od-gettemperature
est un truc du style :

Code : Tout sélectionner

Default Adapter - Supported device 67B1                  Sensor 0: Temperature - 60.00 C
on remarque de suite qu'on pourrait se servir du tiret "-" comme séparateur pour isoler le «60.00 C»,
donc on va "piper" la commande dans un «awk -F " - " '{print $3}'».

Petit test (détourné, vu que je n'ai pas d'ATI) :

Code : Tout sélectionner

$ echo "Default Adapter - Supported device 67B1                  Sensor 0: Temperature - 60.00 C" | awk -F " - " '{print $3}'

60.00 C
Bingo !

Donc, ajuste ta variable tempGPU dans le script ...

──────────────────────────────
Nouvelle version 6 :

Code : Tout sélectionner

#!/bin/bash
# Version6 : Afficher dans une notification rafraîchie toutes les 5 secondes
while [ 1 ]
do
    tempGPU=$(aticonfig --od-gettemperature | awk -F " - " '{print $3}')
    notify-send "tempGPU" "$tempGPU"
    sleep 5
done
Ça devrait rouler (ou pas) ;)