Redireccionamiento
Redireccionamiento
Redireccionamiento
Pág. 2 Dpto. de TD
Sistemas Operativos de Código Abierto
LABORATORIO N° 07
REDIRECCIONAMIENTO Y TUBERIAS
Objetivo:
Requisitos:
Procedimiento:
REDIRECCION DE COMANDOS
Archivo Contenido
/home/james/carta Ejemplo
/home/james/carta1 Prueba
/home/james/carta2 Ejemplo
/home/james/trabajo1 Ejemplo
/home/james/trabajo2 Prueba
/home/james/docs/trabajo3 Ejemplo
Pág. 4 Dpto. de TD
Sistemas Operativos de Código Abierto
8. Liste los archivos que empiecen con trabaj y envíe la salida del comando al
mismo archivo anterior:
$ find -type f -name "trabaj*" >> lista.txt
Pág. 6 Dpto. de TD
Sistemas Operativos de Código Abierto
Nota:
12. Por ejemplo supongamos que Usted necesita guardar un histórico de los
usuarios conectados al sistema en un archivo llamado usuarios.txt, entonces
periódicamente ¿Cuál sería el comando a ejecutar?
Pág. 8 Dpto. de TD
Sistemas Operativos de Código Abierto
Ejecute el comando anterior varias veces. Verifique el tamaño del archivo indicando el
tamaño del mismo.
$ ls –l usuarios.txt
13. Como notará este archivo va creciendo en tamaño. Supongamos que Usted quiere
ahora inicializar este archivo (no eliminarlo), entonces ejecute el siguiente comando:
$ > usuarios.txt
Sistemas Operativos de Código Abierto
El tamaño se reduce a 0
15. Inicie una sesión en una consola o terminal con la cuenta de james. Verifique quiénes
están conectados:
16. En la consola de texto del usuario james, cree un archivo llamado mensaje utilizando el
editor de texto VI, su contenido será el siguiente:
Pág. 10 Dpto. de TD
Sistemas Operativos de Código Abierto
17. Utilice el comando write para enviar el contenido del archivo mensaje al terminal de un
usuario.
Verifique que el mensaje haya llegado a la consola de texto donde ingresó como el
usuario fgarcia.
$ write fgarcia < mensaje
18. Se desea que al final del archivo procesos.txt se pueda ver la lista de usuarios
conectados y nuevamente los procesos en ejecución. ¿Cuál sería el comando?
I. MANEJO DE ERRORES
19. Ingrese a una sesión como root y cree un directorio dentro de /home con acceso
restringido.
# cd /home
# mkdir prueba
# chmod XYZ prueba (restrinja el acceso al directorio)
Nota: XYZ son valores numéricos que tendrán que reemplazarse.
Pág. 12 Dpto. de TD
Sistemas Operativos de Código Abierto
21. Redireccione los mensajes de error anteriores a un archivo, para ello utilice el
carácter de redirección 2>
$ cat error-find
¿Que contienen estos archivo?
Pág. 14 Dpto. de TD
Sistemas Operativos de Código Abierto
Ayuda: Con la ayuda del comando man averigüe cómo funciona el comando
wc.
Pág. 16 Dpto. de TD
Sistemas Operativos de Código Abierto
28. Si son demasiados los usuarios conectados necesitaría mostrarlo con pausa.
¿Cómo lo haría? Indique el comando a ejecutar.
$ who | sort | more
29. Vamos a utilizar el pipe para crear otro comando. Supongamos que queremos
ver los archivos de un directorio que corresponden a un mes determinado.
Para hacer el siguiente ejemplo vamos a crear archivos con diferente fecha.
Ingrese a una sesión como root y utilizando el comando date cambie la fecha
del sistema. (Investigue como hacerlo)
Sistemas Operativos de Código Abierto
30. En una sesión como james, cree algunos archivos con esta nueva fecha en
su directorio hogar y pruebe utilizar el siguiente comando:
$ ls –l | grep aug (donde mar es el mes que se hace referencia)
31. En una sesión como root, retorne la fecha del sistema a su estado inicial.
32. También podría utilizar el pipe para extraer algunas líneas de algún comando
esto lo puede realizar utilizando el comando head o tail según corresponda.
Por ejemplo el comando w le muestra en la primera línea el número de usuarios
conectados entonces Usted podría enviar sólo esta línea a un archivo:
$ w | head –1 > usuarios
33. Puede ser que Usted desea una estadística de número de usuarios conectados
y mantener el historial. ¿Qué comando utilizaría para realizar ésto?
$ w | head –1 >> usuarios
Pág. 18 Dpto. de TD
Sistemas Operativos de Código Abierto
34. Como Usted habrá notado solo figura la hora pero NO la fecha. Se podría
usar este comando para resolver este problema (note el uso del punto y coma
para escribir dos comando seguidos en una misma línea). Visualice el contenido
del archivo usuarios:
$ date >> usuarios ; w | head –1 >> usuarios
Ejemplo 1.
$ ls -p /home/james | grep -v / > lista.txt | sort
Lista los archivos de manera ordena en el archivo lista.txt
Ejemplo2.
Sistemas Operativos de Código Abierto
Pág. 20 Dpto. de TD