O man
é bem direto ao dizer que comando echo
serve para repetir argumentos para a std out. E isso significa passar praticamente qualquer coisa para a saída padrão. Com echo conseguimos utilizar os caracteres de escape, como tabulação, nova linha, ativar recurso de cores de texto, fundo, decoração de caracteres etc.
Escape
Sem -e, não consegue interpretar comandos com escape.
$ echo "Oi\nEu sou o Echo." Oi\nEu sou o Echo.
Com -e, o ativa-se a interpretação de caracteres com escape, como \n para pular linhas:
$ echo -e "Oi\nEu sou o Echo." Oi Eu sou o Echo.
Para nova coluna utilize a opção -e com \v:
$ Nome="Echo" $ echo -e "Oi\nSeu nome é $Nome \v$Nome \v$Nome" Oi Seu nome é Echo Echo Echo
Para nova tabulação utilize a opção -e com \t:
$ echo -e "\tOlá,\n\tEste é um texto tabulado." Olá, Este é um texto tabulado.
Evitar newline
Se não colocar a opção -n, a informação será exibida na tela, depois ocorrerá uma nova linha:
$ echo "Oi, digite seu nome: "; read nome Oi, digite seu nome: _
Agora, com -n, não temos mais newline após a sentença:
$ echo -n "Oi, digite seu nome: "; read nome Oi, digite seu nome: _
Essa nova linha que o echo
cria, pode atrapalhar na hora de pegar o hexadecimal de um caractere
$ echo -e A |hexdump 0000000 41 0a <----- olha o newline aqui no 0a, atrapalhando 0000002 $ echo -en A |hexdump 0000000 41 <----- agora, só o hex 41, que é o A em ascii 0000001
Tem alguma sugestão de como usar o echo? Manda pra mim nos comentários que insiro aqui =D
Respostas de 2
Muito clara a explicacao dos comandos. Valeu Cambria!
Valeu 😉