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

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [UNIX] [Résolu] Saisir du texte sans que cela apparaisse à l'écran

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[UNIX] [Résolu] Saisir du texte sans que cela apparaisse à l'écran

n°575258
lolobreizh
Posté le 19-10-2004 à 10:49:16  profilanswer
 

Bonjour à tous,
 
Mon problème concerne les shell batchs Unix. Plus particulièrement, je travaille sous AIX.
Je sais que la commande "read" permet de faire saisir une ligne de texte à l'utilisateur.
Mon problème est que le texte tapé apparaît à l'écran.
Y a-t-il moyen de ne pas faire apparaître ce texte de la même manière que lors de la saisie du mot de passe lors de la connexion ?
Merci pour votre aide.
Cordialement,


Message édité par lolobreizh le 19-10-2004 à 15:18:49
mood
Publicité
Posté le 19-10-2004 à 10:49:16  profilanswer
 

n°575278
bobuse
Posté le 19-10-2004 à 11:33:09  profilanswer
 

man bash -> read -s
 
EDIT : sou réserve, car les shells sur AIX sont des fois différents sur quelques options ...


Message édité par bobuse le 19-10-2004 à 11:33:47
n°575291
lolobreizh
Posté le 19-10-2004 à 12:03:33  profilanswer
 

Le read -s sert à inclure la commande entrée dans le stdin dans l'historique des commandes (.sh_history).
Est-ce bien de ça que tu veux parler ?
Merci

n°575296
bobuse
Posté le 19-10-2004 à 12:11:55  profilanswer
 

[snipped]


Message édité par bobuse le 19-10-2004 à 14:49:34
n°575418
lolobreizh
Posté le 19-10-2004 à 14:32:53  profilanswer
 

A défaut de trouver ce que je voulais, j'ai trouvé un workaround : écrire en noir sur fond noir
Avec la commande echo, rajouter les paramètres suivants :
  - \033[30m pour la police
  - \033[40m pour le fond
Seul petit problème, si on sélectionne le texte (pour le copier), on ne voit rien mais le "coller" affiche le texte correctement !

n°575435
lolobreizh
Posté le 19-10-2004 à 14:40:23  profilanswer
 

J'ai oublié de préciser : pour revenir en mode normal, il faut ensuite inclure la commande suivante dans le shell
  - echo "\033[0m"

n°575442
bobuse
Posté le 19-10-2004 à 14:49:08  profilanswer
 

oups je me suis trompé de topic, dsl pour mon message précédent :D
je voulais dire :

read -s PLOP; echo $PLOP


[:neowen]


Message édité par bobuse le 19-10-2004 à 14:49:15
n°575454
lolobreizh
Posté le 19-10-2004 à 15:03:47  profilanswer
 

le "read -s" ne fonctionne pas avec ksh qui est le Shell utilisé ici.
En revanche, un collègue a trouvé la solution en utilisant l'aide de stty :
 
     OLDCONFIG=`stty -g`          # save configuration
     stty -echo                   # do not display password
     echo "Enter password: \c"
     read PASSWD                  # get the password
     stty $OLDCONFIG              # restore configuration
 
Efficacité garantie !
Merci pour ton aide.

n°575476
lolobreizh
Posté le 19-10-2004 à 15:18:08  profilanswer
 

Voire encore plus simple d'ailleurs :
     stty -echo
     echo "Enter password: \c"  
     read PASSWD
     stty echo

n°575484
bobuse
Posté le 19-10-2004 à 15:24:29  profilanswer
 

si c'est du ksh aussi :o


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [UNIX] [Résolu] Saisir du texte sans que cela apparaisse à l'écran

 

Sujets relatifs
MDK 10.1 Sortie Optique carte Hercules [Résolu][Unix] Lancer un programme avec un chemin court
plus de clavier sous X (mandrake 10.1) (resolu)apt-proxy cassé... [résolu]
[joypad] Configuration ? (résolu)[Unix ou Linux] Le user MySQL
[on va dire Résolu] problème avec twinview[Unix Sun Solaris 8] Lancer/Arreter services
thunderbird et signatures (résolu]localisation des programmes installes [resolu par 900cbr555]
Plus de sujets relatifs à : [UNIX] [Résolu] Saisir du texte sans que cela apparaisse à l'écran


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