Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1417 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  [Python] Question de débutant, entrée stdin dans un script

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Python] Question de débutant, entrée stdin dans un script

n°1146387
To no avai​l
Stand up
Posté le 11-07-2005 à 14:42:00  profilanswer
 

Bonjour :)
 
C'est mon premier post sur ce forum, donc soyez pas trop méchant avec moi...
 
Ma question est toute bete, sauf que malgré quelques questions a droite et a gauche a des copains, et du google en passant, je n ai pas trouvé une réponse a ma question.
 
Je cherche a faire un script qui permet une sychronisation de mot de passe entre divers services, sur la meme machine au départ.
 
Sauf que voila, mon script python appelle des fonctions genre 'passwd', 'pdbedit', qui réclament une saisie, puis confirmation, d un mot de passe. En clair, j ai un prompt a chaque fois.
 
Y a t il un moyen de rediriger un argument préalablement établi (une chaine par exemple) directement dans un stdin? J utilise le module os, et j execute les commandes via la méthode system, mais j ai pas trouvé comment faire pour retourner un argument a chaque prompt.
 
Si vous pouviez me dire quelle genre de fonction fait ca, et si c est possible au moins (j imagine que oui quand meme...)
 
Par avance, merci  :hello:

mood
Publicité
Posté le 11-07-2005 à 14:42:00  profilanswer
 

n°1147580
To no avai​l
Stand up
Posté le 12-07-2005 à 11:11:34  profilanswer
 

Personne ne sait?  :(  
 
Y a vraiment pas moyen de faire remplir des champs automatiquement par un script quand j appelle une commande genre os.system('passwd') ?  :sweat:

n°1147726
Taz
bisounours-codeur
Posté le 12-07-2005 à 12:22:22  profilanswer
 

c'est normal, la plus part des utilitaires de changements de mots de passe préviennent ce genre de trucs.
 
regarde chpasswd c'est plus simple à utiliser.
 
 
Après y a pas de miracle : tu veux apprendre à programmer, tu vas dans les bibliolinks python et t'apprends. Garde de toi de faire quoi ce que soit en root et de toucher à des trucs importants pendant que tu apprends, sinon tu va flinguer ton système.

n°1147749
To no avai​l
Stand up
Posté le 12-07-2005 à 12:56:54  profilanswer
 

Merci pour ta réponse :)
 
En fait passwd n était qu un exemple, c était surtout pour bien faire comprendre ma question.
 
Ok, je vais faire autrement alors. Merci pour ton aide  :jap:

n°1147880
Gf4x3443
Killing perfection
Posté le 12-07-2005 à 14:25:15  profilanswer
 

Pour passwd, c est vrai que c est galere. Surtout si tu n as pas chpasswd a dispo.
 
Pour de la creation de compte (je gere une ptite salle info d eleves, donc a priori je suis loin d avoir des conseils de pros), j utilise useradd, avec l option comme ca (aux erreurs de syntaxe pres, de tete:)
 
passwd = rand_passwd(8)
crypt_passwd = crypt.crypt(passwd,rand_passwd(2))
commande = 'useradd -g %s -G users -m -p %s -s /bin/bash %s' % (gid, crypt_passwd, login)
 
rand_passwd est une fonction du script qui retourne un mot de passe de x caractères, chiffres ou lettres/majuscules, choisies au hasard.
 
C est porc, mais ca marche  [:petrus75]  
 
NB: l option --stdin qui apparait dans la page man francaise pour passwd n existe pas en réalité, ca doit etre du a une vetusté quelconque de la page.
 
Sinon t as plus violent, l edit de /etc/passwd /etc/shadow, a tes risques et périls...
 
Ca bloque si l utilisateur existe deja, ou si tu utilises d autres services. Donc la y a des bidouilles encore, genre:
 
smbpasswd -as "login" < "fichier texte temporaire contenant les mots de passes"
 
Sinon, il te reste le module pexpect:
 
http://pexpect.sourceforge.net/
 
Bonne chance a toi. Le module par contre, je ne l ai jamais testé.
 
Edit: (de scrupule)
 
Vivement déconseillé de tenter ses scripts avec pexpect en root, sinon prepare quelques sauvegardes sur bande avant, t as les moyens de tout casser avec ce truc.


Message édité par Gf4x3443 le 12-07-2005 à 14:39:08

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Python

  [Python] Question de débutant, entrée stdin dans un script

 

Sujets relatifs
Script CGI > Besoin d'aideInstallation d'un script de commentaire "ACGV" pb de path
votre avis sur mon premier script php (100 lignes)Question for beginners!
question sur chaines de caracteresProblème d'exécution script vbs
pb scriptQuestion de prix ?
[Python & wxPython] Un Canvas comme dans Tkinterquestion VI
Plus de sujets relatifs à : [Python] Question de débutant, entrée stdin dans un script


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR