Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 22/12/2006, à 19: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, à 19: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, à 19: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, à 20: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.