#1 Le 09/03/2013, à 23:48
- Shcak
[Résolu] Entrée clavier dans un script
Bonjour à tous !
Je suis pas tout à fait sûr que ce que je cherche à faire soit possible dans un script bash, mais j'aimerais récupérer des entrées au clavier sans avoir à les valider d'un entrée ni à les afficher à l'écran.
Un truc de ce genre là :
1 #!/bin/bash
2
3 echo -ne "\033[7mchoix1\033[0m choix2\r"
4 choix=1
5
6 while true
7 do
8 #si appui sur gauche
9 echo -ne "\033[7mchoix1\033[0m choix2\r"
10 choix=1
11
12 #si appui sur droite
13 echo -ne "choix1 \033[7mchoix2\033[0m\r"
14 choix=2
15
16 #si appui sur entrée
17 echo -ne " \rchoix $choix\n"
18 break
19 done
Mes recherche quand à une fonction permettant de récupérer les codes touches ont été infructueuses, voyez-vous un moyen de faire ça ?
Merci d'avance.
Dernière modification par Shcak (Le 10/03/2013, à 01:08)
Hors ligne
#2 Le 10/03/2013, à 00:47
- nesthib
Re : [Résolu] Entrée clavier dans un script
Ça n'est pas une chose simple à faire en bash…
Pour avoir des caractères uniques (ex. lettres ascii) :
read -rsn1 -d '' TOUCHE
echo "La touche est \"${TOUCHE}\""
Pour les flèches c'est un peu plus compliqué car le code comprend plusieurs caractères (ex. gauche est « ^[[D »), il faut donc faire :
while true
do
read -rsn3 -d '' TOUCHE
case ${TOUCHE:2} in
A) TOUCHE="↑" ;;
B) TOUCHE="↓" ;;
C) TOUCHE="→" ;;
D) TOUCHE="←" ;;
esac
echo "La flèche est \"${TOUCHE}\""
done
Pour combiner les deux il te faudra faire quelques tests
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#3 Le 10/03/2013, à 00:49
- Haleth
Re : [Résolu] Entrée clavier dans un script
Ne lire qu'un char:
read -n 1 var
Ubuntu is an ancien African word which means "I can't configure Debian"
Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.
Hors ligne
#4 Le 10/03/2013, à 01:07
- Shcak
Re : [Résolu] Entrée clavier dans un script
Merci nesthib, cela répond tout à fait à ma question.
Au plaisir.
Hors ligne