Je pratiquais la commande echo avec l'option \r
(retour chariot) comme ci-dessous.
echo -e "This is \r my college"
production:
my college
mais quand j'ajoute un mot avant \r
comme ci-dessous
echo -e "This is the \r my college"
Ensuite, cela me donne une sortie comme:
my college the
Un autre exemple
echo -e "This is \r valid data"
valid data
echo -e "This is not a \r valid data"
valid data a
Donc, je voulais savoir quel est le but réel du retour en chariot ici?
␣my college
, tout comme la première.echo -e
est notoirement non transférable. Vous devriez probablement utiliser à laprintf
place.Réponses:
C'est
\r
juste ça, un "retour chariot" - rien d'autre. Cela signifie que ce qui est après l'\r
écrasement écrasera le début de ce qui a déjà été imprimé.Par exemple:
Affichera:
echo
a imprimé1234
puis est retourné au début de la ligne et imprimé56
par-dessus12
.Pour une nouvelle ligne, essayez à la
\n
place. Pas besoin d'espace non plus. Par exemple:Qui produira:
Le retour chariot est utile pour des choses comme ceci:
Qui s'affichera
date
au-dessus de lui-même au lieu de créer une nouvelle ligne après chaque boucle.la source
echo_success
de/etc/init.d/functions
.