Com enviar text a la pantalla mitjançant el comandament Linux Echo

Aquesta guia us mostra com enviar text a la finestra del terminal mitjançant l'ordre echo de Linux .

Utilitzat per si mateix en el terminal, l'ordre echo no és particularment útil, però quan s'utilitza com a part del script, es pot utilitzar per mostrar instruccions, errors i notificacions.

Exemples d'usos del comandament echo de Linux

En la forma més senzilla, la forma més senzilla de generar text a la terminal és la següent:

ressò "hola món"

L'ordre anterior mostra les paraules " hello world " a la pantalla (menys les cometes).

Per defecte, la instrucció echo produeix un nou caràcter de línia al final de la cadena.

Per provar-ho, proveu la següent instrucció en una finestra de terminal:

ressò "hola món" & & echo "adéu món"

Veureu que el resultat és el següent:

Hola món
món de comiat

Podeu ometre el caràcter de la línia nova si afegiu el minus n switch (-n) de la manera següent:

echo -n "hola món" && echo -n "món adéu"

El resultat de l'ordre anterior és el següent:

hola món adéu món

Una altra cosa a pensar quan s'utilitza la instrucció echo és com maneja caràcters especials.

Per exemple, proveu el següent en una finestra de terminal:

eco "hola món \ r \ ngoodbye món"

En un món ideal, els \ r i \ n actuarien com a caràcters especials per afegir una nova línia però no ho fan. El resultat és el següent:

hola món \ r \ ngoodbye món

Podeu habilitar caràcters especials amb l'ordre echo incloent el commutador -e de la manera següent:

echo -e "hola món \ r \ ngoodbye world"

Aquesta vegada, el resultat serà el següent:

Hola món
món de comiat

Per descomptat, podria estar en la situació en què està intentant generar una cadena que es tractaria com a caràcter especial i no es vol. En aquest escenari utilitzeu un capital i de la manera següent:

eco -El món de l'hola \ n "

Quins caràcters especials es manegen amb l'opció -e?

Anem a provar un parell d'aquests. Executeu l'ordre següent en un terminal:

echo-i "hel \ blo world"

L'ordre anterior mostrarà el següent:

helo world

Òbviament, no és el que voldríeu donar a la pantalla, però tingueu el punt que la barra invertida b elimina la lletra anterior.

Ara proveu el següent en una finestra de terminal:

echo-i "hola \ c món"

Aquesta ordre emet tot fins a la barra invertida i c. S'ha omès tota la resta, inclosa la nova línia.

Quina és la diferència entre un nou caràcter de línia i un retorn de carro? El caràcter de nova línia mou el cursor cap avall a la següent línia, mentre que el retorn del carro mou el cursor cap a la banda esquerra.

Com a exemple, introduïu el següent a la finestra del vostre terminal:

echo-i "hola \ nworld"

La sortida de l'ordre anterior posa les dues paraules en diferents línies:

Hola
món

Ara prova això en una finestra de terminal:

echo-i "hola" món

La diferència entre una nova línia i un retorn de carro es farà molt evident, ja que es mostrarà com a resultat:

món

Es va mostrar la paraula hola, el retorn del carro va agafar el cursor al principi de la línia i es va mostrar el món de la paraula.

Es fa una mica més obvi si proveu el següent:

echo -e "hola \ rhi"

La sortida de l'anterior és la següent:

Hillo

En realitat, moltes persones utilitzen encara la notació \ r \ n quan surten a una nova línia. Molt sovint, però, podeu escapar amb només un \ n.