Preguntas etiquetadas con pipe

Una tubería Unix conecta descriptores de archivo de dos procesos. Se crea una tubería con la función POSIX pipe () declarada en <unistd.h>. Los shells proporcionan creación de tuberías entre procesos mediante "|".

396
Apague el buffering en la tubería

Tengo un script que llama a dos comandos: long_running_command | print_progress Las long_running_commandimpresiones de un progreso, pero estoy contento con él. Estoy usando print_progresspara hacerlo más agradable (es decir, imprimo el progreso en una sola línea). El problema: la conexión de una...

148
Bash: ¿Qué hace "> |"?

Acabo de ver esto escrito; $ some-command >| /tmp/output.txt Las tuberías verticales se utilizan en redirecciones estándar "canalizando" la salida de un comando a otro, >|de hecho , ¿es completamente inútil ya que sería lo mismo que >en este

146
¿Qué tan grande es el buffer de la tubería?

Como comentario en , estoy confundido de por qué "| true" en un archivo MAKE tiene el mismo efecto que el usuario "|| true" cjm escribió: Otra razón para evitar | verdadero es que si el comando produce suficiente salida para llenar el búfer de la tubería, bloqueará la espera de verdadero para...

98
Pseudo archivos para datos temporales

A menudo quiero alimentar datos de cadenas relativamente cortas (aunque podrían ser varias líneas) a los programas de línea de comandos que aceptan solo la entrada de archivos (por ejemplo, wdiff) de manera repetida. Claro que puedo crear uno o más archivos temporales, guardar la cadena allí y...

89
¿En qué orden se ejecutan los comandos canalizados?

Nunca he pensado realmente cómo el shell realmente ejecuta comandos canalizados. Siempre me han dicho que el "stdout de un programa se canaliza al stdin de otro", como una forma de pensar en las tuberías. Entonces, naturalmente, pensé que en el caso de decir, A | B, A correría primero, luego B...

86
Proceso de sustitución y tubería

Me preguntaba cómo entender lo siguiente: Conectar el stdout de un comando al stdin de otro es una técnica poderosa. Pero, ¿qué pasa si necesita canalizar la salida estándar de múltiples comandos? Aquí es donde entra en juego la sustitución de procesos. En otras palabras, ¿puede la sustitución...

74
¿No se puede conectar a diff?

Quería ser inteligente y comparar un archivo remoto con un archivo local sin descargarlo primero manualmente. Puedo obtener el contenido del archivo remoto por ssh user@remote-host "cat path/file.name" Sin embargo, canalizando eso a diff ssh user@remote-host "cat path/file.name" | diff...

63
¿Cómo hacer una tubería bidireccional entre dos programas?

Todo el mundo sabe cómo hacer tubo unidireccional entre dos programas (bind stdoutde primera y stdinde segunda): first | second. Pero, ¿cómo hacer una tubería bidireccional, es decir, un enlace cruzado stdiny stdoutdos programas? ¿Hay una manera fácil de hacerlo en un

52
¿Para qué se usa el comando mknod?

Acabo de comenzar a usar Ubuntu como mi sistema operativo principal y quería aprender sobre cosas que no debería hacer, y aprender sobre las cosas malas que la gente ha hecho en el pasado. Encontré estos correos electrónicos sobre historias de terror que los administradores de sistemas de UNIX y...