Una tubería es una secuencia de una o más órdenes separadas por el carácter "|" (barra vertical). El formato de una tubería es:
orden1 [ | orden2 ... ]
La salida estándar de orden1 se conecta a la entrada estándar de orden2. Esta conexión se realiza antes que cualquier redirección especificada por la orden.
Cada orden en una tubería se ejecuta como un proceso separado (esto es, en una subshell).
Por ejemplo, para contar el número de líneas de un fichero, ejecutaríamos:
$cat fichero | wc -l
Su explicación es que con el comando cat visualizamos el contenido del fichero, pero esta salida, en vez de ir a la pantalla, se mete en la tubería que va hacia la entrada de la orden wc (de word count, contador de palabras) que con su opción -l nos dice el número de líneas que ha leído.
En esta característica se apoya gran parte de la elegancia de los sistemas Unix/Linux. Con comandos simples podemos llegar a realizar acciones verdaderamente complejas.