Tuberías en Bash
Este tutorial explica qué son las canalizaciones y su uso en entornos Unix y Linux.
Tuberías en Unix y Linux
Las canalizaciones en entornos Unix y Linux pasan la salida estándar de un comando como entrada estándar al otro comando para su posterior procesamiento. Las tuberías utilizan el operador de tubería para pasar la salida de un comando al otro comando como entrada. El operador de tubería es una barra vertical, |
.
Al usar tuberías, los datos fluyen de izquierda a derecha. Las canalizaciones ayudan a pasar datos de forma fluida y continua entre comandos en lugar de usar archivos de texto para pasar datos.
La siguiente sintaxis se utiliza para tuberías.
command1 | command2 | command3
De la sintaxis anterior, la salida estándar de command1
se canaliza a command2
como entrada estándar. command2
procesa la entrada estándar de command1
y canaliza la salida a command3
para su posterior procesamiento.
Usar tuberías en Bash
Los siguientes ejemplos demuestran el uso de tuberías en Bash.
En la imagen a continuación, el primer comando ls
enumera todo el contenido de la carpeta test
. El segundo comando ls
canaliza la salida estándar al comando head
como entrada estándar.
El comando head
tiene la opción -2
; esto le dice al comando head
que muestre las dos primeras líneas de la salida del comando ls
.
El primer comando cat
muestra el contenido del archivo en la imagen de abajo, file1.txt
. El segundo comando cat
canaliza la salida estándar al comando grep
.
El comando grep
coincide con la línea que tiene el patrón John
, y una vez que se encuentra la línea, la salida se canaliza al comando tee
, que escribe la línea en el archivo output.txt
. El comando tee
también canaliza su salida estándar al comando wc
.
El comando wc
cuenta el número de palabras, caracteres o líneas del archivo. Las opciones de wc
se han establecido en -mwl
. Las opciones -m
le dicen al comando wc
que cuente el número de caracteres en el archivo y lo imprima en la pantalla.
Use la opción -w
para contar palabras en el archivo, y la opción -l
se usa para contar el número de líneas en el archivo, y las cifras se imprimen en la salida estándar a través del terminal.
El archivo output.txt
tiene 1
línea, 4
palabras y 21
caracteres.