Como usar o comando Echo no Linux

Uma janela de terminal Linux em uma área de trabalho com o tema Ubuntu.
Fatmawati Achmad Zaenuri / Shutterstock

O echocomando é perfeito para escrever texto formatado na janela do terminal. E não precisa ser texto estático. Ele pode incluir variáveis ​​de shell, nomes de arquivos e diretórios. Você também pode redirecionar o eco para criar arquivos de texto e arquivos de log. Siga este guia simples para descobrir como.

Echo repete o que você diz para repetir

Zeus gostava de deixar o Monte Olimpo para se casar com belas ninfas. Em uma viagem, ele disse a uma ninfa da montanha chamada Eco para atacar sua esposa , Hera, se ela o seguisse. Hera veio procurar Zeus, e Echo fez tudo o que podia para manter Hera conversando. Finalmente, Hera perdeu a paciência e amaldiçoou a pobre Echo para que ela apenas repetisse as últimas palavras que outra pessoa havia dito. O que Hera fez com Zeus quando o alcançou é uma incógnita.

E isso, basicamente, é echomuito na vida. Ele repete o que foi dito para repetir . É uma função simples, mas vital. Sem echo, não seríamos capazes de obter uma saída visível de scripts de shell, por exemplo.

Embora não esteja sobrecarregado com uma infinidade de sinos e assobios, há uma boa chance de que echotenha alguns recursos que você não conhecia ou que esqueceu.

eco? eco!

A maioria dos sistemas Linux oferece duas versões do echo. O shell Bash tem o seu próprio echointegrado e também há uma versão executável binária do echo.

Podemos ver as duas versões diferentes usando os seguintes comandos:

digite eco
where is echo

digite echo em uma janela de terminal

O typecomando nos diz se o comando que passamos para ele como seu argumento é um shell embutido, um executável binário, um alias ou uma função. Ele nos relata que echoé um shell embutido.

Recomendado:  Como mover para uma câmera dedicada após usar uma câmera de smartphone

Assim que encontrar uma resposta, typepara de procurar outras correspondências. Portanto, não nos diz se existem outros comandos com o mesmo nome presentes no sistema. Mas nos diz qual encontra primeiro. E esse é o que será usado por padrão quando emitirmos esse comando.

Os whereisolhares de comando para o binário executável, o código fonte e página man para o comando passamos a ele como a sua linha de comando parâmetro . Ele não procura por shell builtins porque eles não têm um executável binário separado. Eles são parte integrante do executável Bash.

O whereiscomando relata que echoé um executável binário localizado no /bindiretório.

Para usar essa versão, echovocê precisaria chamá-la explicitamente, fornecendo o caminho para o executável na linha de comando:

/ bin / echo --version

/ bin / echo --version em uma janela de terminal

O shell embutido não sabe qual é o --versionargumento da linha de comando, apenas o repete na janela do terminal:

echo --version

echo --version em uma janela de terminal

Todos os exemplos mostrados aqui usam a versão padrão do echo, no shell Bash.

Escrevendo Texto no Terminal

Para escrever uma string simples de texto na janela do terminal, digite echoe a string que deseja exibir:

echo Meu nome é Dave.

echo Meu nome é Dave.  em uma janela de terminal

O texto é repetido para nós. Mas, à medida que você experimenta, logo descobrirá que as coisas podem ficar um pouco mais complicadas. Veja este exemplo:

echo Meu nome é Dave e sou um geek.

echo Meu nome é Dave e sou um geek.  em uma janela de terminal

A janela do terminal exibe uma   > placa e fica lá, esperando. Ctrl + C o levará de volta ao prompt de comando. O que aconteceu lá?

A aspa simples ou apóstrofo na palavra “Estou” confusa echo. Ele interpretou essa aspa simples como o início de uma seção de texto citada. Porque ele não detectou uma aspa única de fechamento,  echoestava esperando por mais informações. Esperava-se que outras entradas incluíssem a aspa simples que estava faltando.

Recomendado:  Como personalizar a barra de status no Android (sem enraizar)

Para incluir uma aspa simples em uma string, a solução mais simples é envolver toda a string entre aspas duplas:

echo "Meu nome é Dave e eu sou um geek."

echo "Meu nome é Dave e eu sou um geek."  em uma janela de terminal

Quebrar seu texto entre aspas duplas é um bom conselho geral. Em scripts, ele delimita claramente os parâmetros para os quais você está passando echo. Isso torna a leitura – e depuração – de scripts muito mais fácil.

E se você quiser incluir um caractere de aspas duplas em sua string de texto? Isso é fácil, basta colocar uma barra invertida \antes das aspas duplas (sem espaço entre elas).

echo "Meu nome é Dave e eu sou um \" geek. \ """"