Pages : 1
#1 Le 22/12/2006, à 18:21
- zesamoth
Python + Scripts bash
Bonjour messieurs,
Tout d'abord je réclame votre indulgence. Je débute sur Ubuntu depuis quelques jours seulement et malgré le fait que je comprenne de mieux en mieux python on ne peut pas dire que je suis un professionnel.
Je vous explique mon projet, mon problème, et les premières pistes de solution que j'ai pu trouver...
Je suis dans une école ou se mélange entre autre des informaticiens et des non-informaticiens.
Les PC de l'école utilise Ubuntu ET Vmware player pour lancer des images XP afin de ne pas déstabiliser les non-informaticiens avec Linux.....
Le but est de se connecter à une session ubuntu sous un nom générique ( User, Azerty ) et lancer un script qui démarre un programme python voué à choisir une image vmware à démarrer.
Mais pour cela le programme doit avoir une phase de connexion qui permette à n'importe quel utilisateur de se connecter sur SA session pour obtenir SES droits. Donc le script Python doit appeler un script bash... et c'est là que je bloque...
Mon script python appelle un script bash
os.system('sh bin.connexion.sh')
. Pour l'instant je ne cherche pas à passer de paramètres mais ça ne saurait tarder. Je voudrais juste comprendre le principe de l'appel aux scripts bash.
Mon script connexion.sh est tout simple
su invite
Il me permet effectivement bien de connecter l'utilisateur invite en demandant son mot de passe. Mais une fois que la connexion est établie le script python ne reprend pas la main...
Je souhaiterais que mon script puisse :
-d'une part recevoir un argument et effecteur son traitement en fonction de cet argument ( le login )
-renvoyer une valeur en fonction de la réussite ou non de la connexion
- permettre à python de reprendre la main pour analyser cette valeur de retour
J'éspère que vous m'aurez compris et que vous pourrez m'aider. Un lien, un conseil, un tuto, tout est bénéfique !!
Merci pour votre aide
zesamoth
#2 Le 22/12/2006, à 18:43
- trucutu
Re : Python + Scripts bash
- dans ton script bash, tu peux utiliser la variable $1 qui sera le premier argument passé à ton script. (Sinon, pour le script python, c'est sys.argv[1] )
- Ca je ne sais pas trop, peut être que simple echo peut suffire pour enchainer sur le 3° point
- Là, il vaudrait mieux que tu utilises un truc du genre :
connexion = commands.getoutput(cmd)
à la place de system. Cela te permet de récupérer la grandeur renvoyée par cmd
Bon, j'espère ne pas trop avoir dit de bétises...
Dernière modification par trucutu (Le 22/12/2006, à 18:45)
La chanson du dimanche - "La pêche !"
PC acheté chez Novatux : entièrement satisfait.
Faire des recherches solidaires !
Hors ligne
#3 Le 22/12/2006, à 19:29
- zesamoth
Re : Python + Scripts bash
Merci pour ta réponse rapide !!
Malheureusement je ne peux pas tester parce que je ne suis plus sur mon ordi perso.
Mais dès qu'il y a du nouveau je vous tiendrais au courant.
Pages : 1