tuberías vs. redirecciones


23

He estado usando tuberías y redireccionamientos durante mucho tiempo y me di cuenta de que no sé exactamente cómo son diferentes. Solo sé que si quieres almacenar la salida en un archivo, entonces usas>. De lo contrario, la mayoría de las veces solo usas |. ¿Alguien puede explicar la diferencia entre tuberías y redireccionamientos?


Respuestas:


25

Los dos hacen lo mismo básico; redirigen un descriptor de archivo del proceso ejecutado. La diferencia radica en cómo. Una tubería conecta la salida estándar de un proceso con la entrada estándar de otro, mientras que la redirección redirige desde / hacia un archivo ( >de salida <estándar a un archivo, de un archivo a entrada estándar).


1
El tipo de distinción difumina en Linux y otros sistemas que tienen /dev/fd. Por ejemplo, si ejecuta echo foo > >(somecommand), se expandirá a echo foo > /dev/fd/3. Todavía es una redirección, pero a un proceso.
user1686
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.