#1 Le 01/01/2012, à 17:18
- Hizoka
[resolu] modifier une ligne du terminal
Bonjour,
ne sachant pas trop comment on appelle ca, je vais vous decrire ce que je recherche
echo .
echo ..
echo ...
=> .
=> ..
=> ...
des echo à la suite renvoie le texte dans une nouvelle ligne (ou à la suite en fonction des options)
mais je voudrais modifier cette ligne au fur et à mesure...
que cela donne :
. => .. => ...
que cette ligne se modifie à chaque informations et non que s'ajoute le texte à l'ancien.
Desole si je ne suis pas tres precis...
Voilou merci
Dernière modification par Hizoka (Le 01/01/2012, à 18:21)
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#2 Le 01/01/2012, à 17:45
- Watael
Re : [resolu] modifier une ligne du terminal
salut,
L'option -n ne te convient pas ?
Il faudrait peut-être exposer davantage le contexte
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#3 Le 01/01/2012, à 18:08
- credenhill
Re : [resolu] modifier une ligne du terminal
hello
avec echo -en '\r' pour revenir en début de ligne
par ex.
$ echo -n " hello";for n in $(seq 1 10); do echo -en "\r"; echo -n "$n";sleep 1;done; echo
Hors ligne
#4 Le 01/01/2012, à 18:20
- Hizoka
Re : [resolu] modifier une ligne du terminal
credenhill => parfait
merci, je connaissais \r mais pas le melange -en
merci wateal d'avoir repondu
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#5 Le 02/01/2012, à 10:10
- credenhill
Re : [resolu] modifier une ligne du terminal
si \r revient en début de ligne, on peut aussi utiliser ^H pour reculer
$ echo -n '1234' ; sleep 5 ; echo -e '^H^Haa'
Hors ligne
#6 Le 02/01/2012, à 14:48
- Hizoka
Re : [resolu] modifier une ligne du terminal
1234^H^Haa
ca me donne la meme chose finalement que des echo -n...
c'est dommage qu'il affiche les ^H non ?
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#7 Le 02/01/2012, à 15:06
- Totor
Re : [resolu] modifier une ligne du terminal
echo -e 'abc\e[1Dd'
echo -e 'abc\e[2Dd'
-- Lucid Lynx --
Hors ligne
#8 Le 02/01/2012, à 15:17
- Hizoka
Re : [resolu] modifier une ligne du terminal
les trucs incomprehensibles
avec un crochet qui s'ouvre et aucun qui se referme.
C'est pas mal aussi comme truc...
Merci totor
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#9 Le 02/01/2012, à 15:28
- credenhill
Re : [resolu] modifier une ligne du terminal
dans mon exemple, les ^H sont saisis avec
^V^H : Ctrl+V Ctrl+H
Hors ligne
#10 Le 02/01/2012, à 21:37
- pode
Re : [resolu] modifier une ligne du terminal
Le ^H peut être remplacé plus simplement par \b
Exemple avec le script shell suivant qui affiche une barre qui tourne :
#!/bin/bash
NB=0
tourne() {
NB=$((NB+1))
if [[ $NB = 1 ]]; then
echo -ne '-'
else
echo -ne '\b-'
fi
sleep 1
echo -ne '\b\\'
sleep 1
echo -ne '\b|'
sleep 1
echo -ne '\b/'
sleep 1
}
for i in $(seq 1 25)
do
tourne
done
Hors ligne
#11 Le 03/01/2012, à 17:43
- credenhill
Re : [resolu] modifier une ligne du terminal
on peut aussi utiliser tput hpa # pour changer de colonne
$ for X in {9..1} ; do tput hpa $X ; echo -n $X ; sleep 1 ; done ; echo
Hors ligne
#12 Le 03/01/2012, à 17:47
- Hizoka
Re : [resolu] modifier une ligne du terminal
il est vraiment pas mal ce topic
merci à vous tous
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne