Read dans un script ksh

Résolu
Bonjour,

Dans le cadre de mon activité professionnelle, je suis amené parfois à modifier/créer des shell (ksh) sur un AIX 6. Le HIC, c'est qu'à la base, ce n'est pas mon domaine, mais bon on s'adapte...

Actuellement, je planche sur une problématique purement "esthétique", les personnelles de la boîte étant particulièrement pointilleux...

Je m'explique... Dans mon shell actuellement, l'utilisateur doit saisir un chiffre correspondant à une liste de choix proposée, du type :

1 -> M. AAA
2 -> M. BBB
3 -> M. CCC
...

J'ai pu remarqué dans le script que c'était le 'read' qui permettait de saisir cette réponse. Le truc, c'est que la saisie se fait sur un retour à la ligne (ligne du dessous vide), mais les utilisateurs souhaiteraient pouvoir saisir leur réponse à la fin d'une ligne et non pas au retour à la ligne. Exemple :

"Votre choix : (le curseur devrait être ici)"
(et non ici)

J'ai beau essayé diverses options et synthaxes le 'read' me renvoi systématiquement à la ligne...

Please... help !

Merci d'avance ;-)

2 réponses

  1. hello
    essayer
    ksh ~ $ echo -n "votre choix: " ; read VAR
    votre choix: onk 
    ksh ~ $ echo $VAR
    onk
    
    0
    1. salut,

      montre-nous au moins la partie du script qui propose ces choix.
      on ne peut rien te dire à l'aveuglette!
      0
      1. Voici le cas concret :

        echo "Entrez le numéro correspondant au 1er valideur :"
        echo ""
        echo " 1 -> M. AAA"
        echo " 2 -> M. BBB"
        echo " 3 -> M. CCC"
        echo " 4 -> Mlle. DDD"
        echo " 5 -> Mme. EEE"
        echo ""
        echo "Entrez votre choix : ";read
        0
      2. Merci, mais j'avais déjà essayé... et ça m'affiche :

        -n Entrez votre choix :
        (et le "curseur" est ici)
        0
      3. $ read choix'?prompt : '
        prompt : 
        0
      4. si echo -n n'est pas reconnu, essayer
        echo "Entrez votre choix : \c";read
        0