next up previous contents index
Siguiente: Uso de tuberías Subir: Fontanería Anterior: Entrada y salida estándar.   Índice General   Índice de Materias


Redireción de la entrada y la salida

Ahora, digamos que quiere mandar la salida de sort a un fichero, para guardar nuestra lista de la compra en el disco. El intérprete de órdenes le permite redirecionar la salida estándar a un nombre de fichero, usando el símbolo ``>''. Aquí está cómo funciona:
\begin{tscreen}
/home/larry/papers\char93  sort $>$\ listacompra \\
bananas \\ ...
...rias \\
manzanas \\
\key{Ctrl-D} \\
/home/larry/papers\char93
\end{tscreen}
Como puede ver, el resultado de la orden sort no se visualiza, pero se guarda en el fichero llamado listacompra. Veamos este fichero:
\begin{tscreen}
/home/larry/papers\char93  cat listacompra \\
bananas \\
manzanas \\
zanahorias \\
/home/larry/papers\char93
\end{tscreen}
Ahora puede ordenar su lista de la compra ¡y guardarla también!. Pero supongamos que está guardando la lista de la compra original sin ordenar en el fichero items. Un modo de ordenar la información y guardarla en un fichero sería darle a sort el nombre del fichero a ser leído, en lugar de la entrada estándar, y redireccionar la salida estándar como lo hicimos arriba, como sigue:
\begin{tscreen}
/home/larry/papers\char93  sort items $>$\ listacompra \\
/home...
...ananas \\
manzanas \\
zanahorias \\
/home/larry/papers\char93
\end{tscreen}
Sin embargo, hay otra forma de hacer ésto. No sólo puede redireccionar la salida estándar, también puede redireccionar la entrada estándar, usando el símbolo ``<''.
\begin{tscreen}
/home/larry/papers\char93  sort $<$\ items \\
bananas \\
manzanas \\
zanahorias \\
/home/larry/papers\char93
\end{tscreen}
Técnicamente, sort < items es equivalente a sort items, pero vamos a demostrar lo siguiente: sort < items se comporta como si los datos del fichero items fueran tecleados a la entrada estándar. El intérprete de órdenes maneja el redireccionamiento. sort no se le dió el nombre del fichero (items) a leer; en lo que concierne a sort, él todavía lee de la entrada estándar como si hubiera tecleado los datos desde su teclado.

Esto introduce el concepto de filtro. Un filtro es un programa que lee datos de la entrada estándar, los procesa de alguna forma, y manda los datos procesados a la salida estándar. Usando la redirección, la entrada y salida estándar pueden ser referenciadas desde ficheros. Como se mencionó más arriba stdin y stdout son por omisión el teclado y la pantalla respectivamente. El programa sort es un filtro simple. Ordena los datos entrantes y manda el resultado a la salida estándar. Más sencillo aún es cat. No hace nada con los datos entrantes, sólo devuelve todo lo que se le entrega.


next up previous contents index
Siguiente: Uso de tuberías Subir: Fontanería Anterior: Entrada y salida estándar.   Índice General   Índice de Materias
Ismael Olea 2002-09-26