Tuberías
Una tubería es una secuencia de uno o más comandos separados por uno de los operadores de control | o | &. El formato para una tubería es:
[time [-p]] [ ! ] command [ | or |& command2 ... ]
La salida estándar del comando se conecta a través de una tubería a la entrada estándar del comando2. Esta conexión se realiza antes de cualquier redirección especificada por el comando (ver REDIRECCIÓN a continuación). Si se utiliza | &, el error estándar de comando se conecta a la entrada estándar de command2 a través de la tubería; es la abreviatura de 2> y 1 |. Esta redirección implícita del error estándar se realiza después de cualquier redirección especificada por el comando.
El estado de retorno de una tubería es el estado de salida del último comando, a menos que la opción pipefail esté habilitada. Si pipefail está habilitado, el estado de retorno de la tubería es el valor del último comando (el más a la derecha) para salir con un estado distinto de cero, o cero si todos los comandos salen con éxito. Si la palabra reservada! precede a una tubería, el estado de salida de esa tubería es la negación lógica del estado de salida como se describió anteriormente. El shell espera a que finalicen todos los comandos de la canalización antes de devolver un valor.
Si la palabra de tiempo reservado precede a una canalización, el tiempo transcurrido, así como el tiempo del usuario y del sistema consumido por su ejecución, se informan cuando finaliza la canalización. La opción -p cambia el formato de salida al especificado por POSIX. La variable TIMEFORMAT se puede establecer en una cadena de formato que especifica cómo se debe mostrar la información de temporización; vea la descripción de TIMEFORMAT en Variables de Shell a continuación.
Cada comando en una tubería se ejecuta como un proceso separado (es decir, en una subshell).
type time
para ver de qué se trata.