Overview
en Linux, echo es uno de los comandos más básicos y ampliamente utilizados. En este tutorial, aprenderemos el comando echo y sus opciones a través de ejemplos.
¿qué comando echo?
la mayoría de las distribuciones modernas de Linux toman bash como su shell predeterminado. Y la mayoría de los shells implementan echo como un comando integrado, incluyendo bash, zsh, csh y ksh. Por lo tanto, cuando estamos en bash, por ejemplo, el comando echo está disponible como un shell integrado.,
en este artículo, nos centraremos en el comando echo integrado de bash.
hay otro comando echo del paquete GNU coreutils, que también está disponible en todas las distribuciones de Linux.
Cuando estamos trabajando en una terminal, en la mayoría de los casos, usaremos el BUILTIN echo.
para ver los dos comandos echo, podemos usar otro comando incorporado: escriba con la opción-a:
$ type -a echoecho is a shell builtinecho is /usr/bin/echo
Introducción al comando echo
el comando echo escribe texto en la salida estándar (stdout).,
la sintaxis para usar el comando echo es bastante sencilla:
echo STRING...
por ejemplo:
$ echo "Hello World from the echo command" Hello World from the echo command
algunos usos comunes del comando echo son canalizar variables de shell a otros comandos, escribir texto en stdout en un script de shell y redirigir texto a un archivo.
veremos algunos ejemplos más del comando echo en secciones posteriores.,
imprimir valores de variables
un uso cotidiano de echo es mostrar el valor de una variable de entorno:
$ echo $JAVA_HOME/usr/lib/jvm/default
Si envolvemos variables de shell entre comillas dobles, el comando echo imprimirá los valores de las variables. Si no queremos que una variable se convierta a su valor, podemos escapar del signo Dólar (dollar):
$ echo "\$JAVA_HOME : $JAVA_HOME"$JAVA_HOME : /usr/lib/jvm/default
Como alternativa a escapar del signo Dólar, podemos envolver la cadena entre comillas simples., Esto se debe a que las variables de shell en comillas simples no se expandirán:
$ echo '$JAVA_HOME :' $JAVA_HOME $JAVA_HOME : /usr/lib/jvm/default
imprimir la salida de un comando
si colocamos una sustitución de comandos dentro de comillas dobles, el comando echo imprimirá la salida de la ejecución del comando:
$ echo "My Linux booted at $(uptime -s)"My Linux booted at 2020-02-14 10:41:50
omitir la nueva línea final
de forma predeterminada, el comando echo generará un carácter de nueva línea al final de la cadena., Podemos decirle a echo que omita la nueva línea final usando la opción-n:
Como podemos ver en la salida anterior, el prompt viene inmediatamente después de la salida del comando echo debido a la ausencia de la nueva línea final.
también es muy útil vaciar un archivo sin eliminarlo usando echo y esta opción-n:
$ echo -n "" > /tmp/boot_history.txt$ file /tmp/boot_history.txt/tmp/boot_history.txt: empty
imprimir caracteres de Escape de barra invertida
primero, echemos un vistazo a otro ejemplo:
$ echo "Line 1\nLine 2\nLine 3\nvtab1\vvtab2\vvtab3"Line 1\nLine 2\nLine 3\nvtab1\vvtab2\vvtab3
en el texto anterior, hay barra invertida-caracteres escapados. El comando echo los imprimirá literalmente por defecto.,li>
ahora, pasemos la opción-e a echo, veamos lo que nos dará:
$ echo -e "Line 1\nLine 2\nLine 3\nvtab1\vvtab2\vvtab3"Line 1Line 2Line 3vtab1 vtab2 vtab3
excepto para la salida de esos caracteres de escape de barra invertida, podemos dejar que el comando echo emita texto en colores pasando secuencias de escape ANSI para ello:
$ echo -e "\033[0;32mINFO In Green \033[0m"$ echo -e "\033[0;33mWARN In Yellow \033[0m"$ echo -e "\033[0;31mERROR In Red \033[0m"
veremos la siguiente salida si ejecutamos los comandos anteriores:
conclusión
el comando echo es simple, pero lo usamos muy a menudo.,
en este artículo, hemos aprendido algunos usos típicos del comando echo a través de ejemplos. Por ahora, podemos controlar la salida usando varias opciones.
también sabemos cómo obtener una salida colorida usando el comando echo.