El primero punto a considerar es conocer que en Linux existen canales de entrada y de salida. Tenemos por ejemplo entrada del teclado, salida de un comando a pantalla, a un archivo, salida de errores en pantalla o a un archivo.
Estos canales son los siguientes:
-
Canal 0: Standard input (stdin)
-
Canal 1: Standard output (stdout)
-
Canal 2: Standard Error (stderr)
Con los canales anteriores podemos generar distintos tipos de salida
con distinta sintaxis. Tenemos:
-
comando > archivo : Salida a un archivo nuevo
-
comando >> archivo : Salida agregando a un archivo existente
-
comando 2> archivo : Enviar los mensajes de error a un archivo
-
comando 2> /dev/null : Descartar los mensajes de error
-
comando &> archivo : Salida & Errores a un archivo nuevo
-
comando &>> arhivo : Salida & Errores agregando a un archivo existente
Piping: O entubar, es el conectar procesos/programas entre sí. Es
decir podemos enviar la salida de un comando (stdout) como entrada
(stdin) de un segundo comando. Ejemplo:
ls
| wc Cuenta el número de
lineas, letras y caracteres del listado de archivos de una ubicación
Tee: Conocido también como tuberia T es la acción de enviar la
salida de un comando (stdout) a un archivo o terminal (stdout) antes
de enviarlo como entrada (stdin) a otro proceso. Ejemplo:
ls | tee /tmp/archivo.tmp | less Envia el listado de
archivos de una ubicación a un archivo en tmp y después muestra
este listado en pantalla
Si tee es utilizado al final de una tuberia se puede salvar el
archivo y al mismo tiempo mostrarlo en pantalla. Ejemplo: ls |
head -n 5 | tee /tmp/myfile.tmp
No hay comentarios:
Publicar un comentario