Je souhaiterais que le résultat d’une commande bash s’affiche dans une interface graphique en python (Tkinter).
Voici la commande en question et son résultat:
$ cat /dev/usbtmc0
Minor Number Manufacturer Product Serial Number
001 Tektronix TDS2002b C630058
Il s’agit d’un oscilloscope numérique connecté en usb.
En fait j’aimerais tester le résultat de cette commande et qu’un message s’affiche dans mon programme python en fonction du résultat, quelque chose du genre:
“l’appareil Tektronix TDS2002b est bien connecté” ou “aucun appareil n’a été détecté, vérifier la connexion!”
C’est possible à votre avis? Je précise que je débute en programmation… Je cherche beaucoup sur le net, mais là je ne trouve pas vraiment ce que je voudrais…
[code]status, output = getstatusoutput('cat /dev/usbtmc0')
estConnecte = False
if not status:
for ligne in output:
if ligne.find('Product') != -1:
vendor = ligne.split()[1]
modele = ligne.split()[2]
estConnecte = True
sortie= "L'appareill %s %s est bien connecté" % (vendor, modele,)
if not estConnecte:
sortie= "Aucun appareil detecté"
label = Tkinter.Label(self,text=sortie, fg="red", height="2")
[/code]
ça a l’air de marcher… Faut juste que je teste avec un appareil connecté!
Mais j’en ai malheureusement pas sous la main…
[code]status, output = getstatusoutput('cat /dev/usbtmc0')
estConnecte = False
if not status:
for ligne in output.split('\n'):
if ligne.find('Product') == -1:
vendor = ligne.split()[1]
modele = ligne.split()[2]
estConnecte = True
sortie= "L'appareil %s %s est bien connecté" % (vendor, modele,)
if not estConnecte:
sortie= "Aucun appareil détecté, vérifiez le branchement de l'oscilloscope!"
for ligne in output.split('\n'):
if ligne.find('001') == -1:
label = Tkinter.Label(self,text=sortie, bg="red")
label.grid(column=0,row=1,columnspan=8)
for ligne in output.split('\n'):
if ligne.find('001') != -1:
label = Tkinter.Label(self,text=sortie, bg="green")
label.grid(column=0,row=1,columnspan=8)[/code]