Eu estava praticando o comando eco com a opção \r
(retorno de carro) como abaixo.
echo -e "This is \r my college"
resultado:
my college
mas quando adiciono mais uma palavra antes, \r
como abaixo
echo -e "This is the \r my college"
Então me dá uma saída como:
my college the
Outro exemplo
echo -e "This is \r valid data"
valid data
echo -e "This is not a \r valid data"
valid data a
Então, eu queria saber que qual é o objetivo real do retorno de carro aqui?
␣my college
, assim como o primeiro.echo -e
é notoriamente não portável. Você provavelmente deve usar em seuprintf
lugar.Respostas:
O
\r
é apenas isso, um "retorno de carro" - nada mais. Isso significa que o que é após o\r
sobrescrever o início do que já foi impresso.Por exemplo:
Exibirá:
echo
imprimiu1234
e voltou ao início da linha e imprimiu56
por cima12
.Para uma nova linha, tente
\n
. Não há necessidade de espaços também. Por exemplo:Qual saída:
O retorno de carro é útil para coisas como esta:
O qual será exibido
date
por cima, em vez de criar uma nova linha após cada loop.fonte
echo_success
de/etc/init.d/functions
.