separata no6 sistemas operativos 2011 i
TRANSCRIPT
-
8/3/2019 Separata No6 Sistemas Operativos 2011 I
1/3
Semana 6 Sistemas Operativos III
Tuberas (PIPES).
En el mundo Linux, las tuberas (tambin conocidas como pipes) relacionan la salida estndar de un
comando con la entrada estndar de otro comando.
Considere el comando ls discutido anteriormente. Existen varias opciones disponibles con el coman-
do ls, pero qu pasa si la visualizacin del contenido de un directorio es demasiado rpida comopara verla?
Vamos a ver el contenido del directorio /etc/ con el comando:
ls -al /etcPara poder visualizar la informacin de manera pausada se usa el comando less, un paginador que
permite ver la informacin por pginas (en la pantalla).
Use la barra vertical (|) para entubar comandos.
ls -al /etc | less
Los comandos less, more y cat ya vistos anteriormente ayudan mucho a la visualizacin de esta
informacin, pero muchas veces es necesario realizar algn anlisis relacionado con las tuberas.
Para ello se ha clasificados en:
stdin stdoutls al /etc more
Cuando nos referimos a un stdin (ingreso estndar) nos referimos a un comando de entrada,
mayormente es un comando que visualiza contenidos de directorios o bien visualiza contenidos de
archivos.El stdout viene a ser los comandos de salida (salida estndar). Generalmente termina en un less o
Prof: Carlos Jara Alva GNU/LINUX www.idatux.org
-
8/3/2019 Separata No6 Sistemas Operativos 2011 I
2/3
Semana 6 Sistemas Operativos III
mores.
Lo interesante de estos comandos es que podemos juntar en una sola lnea de comandos varios
comandos ms y realizar una aplicacin. Para ellos usamos los siguientes comandos:
1. Comando sort.Este comando permite ordenar listas. Si no se coloca el parmetro r
ordenara en forma ascendente, caso contrario ordenara en forma descendente.Sintaxis:
#sort r /root/install.log (muestra la informacion en forma descendente)
#sort /root/install.log (muestra la informacion en forma ascendente)
2. Comando grep.Este comando permite realizar una bsqueda de un carcter o palabraen especial dentro de un archivo.
Sintaxis:
#grep firefox /root/install.log
3. Comando wc. Este comando permite contar palabras, letras o caracteres segn el
parmetro a elegir. Para un mejor entendimiento, se utiliza
-w cuenta las palabras de una lista o archivo.
-c cuenta los caracteres de una lista o archivo.
-l cuenta las lneas de una lista o archivo.
Sintaxis:
#wc w /root/install.log
4. Comando tee. Este comando permite crear un archiva aun usando una pipes.Normalmente se le utiliza para crear archivos auxiliares.
Sintaxis:
# ls al /home sort tee auxiliar1
5. Comando uniq. Elimina las lneas consecutivas repetidas de un fichero (o entrada
estndar) mostrando slo una en su salida por pantalla (o un fichero).
Sintaxis:
# ls al /home sort tee auxiliar1 uniq > archivo1.txt
6. Comando touch.Este comando permite crear archivos, solo el nombre con contenidovacio.
Sintaxis:
#touch archivo1
7. Comando head. Este comando permite visualizar las 10 primeras lineas de un archivo.
#head archivo1.txt
8. Comando tail. Este comando permite visualizar las 10 ultimas lineas de un archivo.
#tail archivo.txtg.
Prof: Carlos Jara Alva GNU/LINUX www.idatux.org
-
8/3/2019 Separata No6 Sistemas Operativos 2011 I
3/3
Semana 6 Sistemas Operativos III
9. Comando locate. Este comando sirve para localizar la ruta de un archivo en linux para
saber dnde est guardado. Puede ser ms rpido que find ya que almacena las rutas en
una base de datos. Es especialmente til cuando se conoce el nombre del programa pero no
se recuerda la ruta.
Es necesario actualizar el ndice con el comando updatedb para que reindexe los archivosnuevos, cada vez que se cree un archivo nuevo.
#cat > archivo1.txt
#locate archivo1.txt (no mostrara nada, procedemos a actualizar la base de datos)
#updatedb
#locate archivo1.txt
10. Comando find. Permite buscar archivos por nombre segun caracteristicas especiales.
#find /home -name '*.avi'
Fjese en la posicin del asterisco. Esto hace que busque archivos con cualquier texto (*) y
que terminen en .avi
Si estamos buscando vdeos, limitarnos al formato avi no es una buena idea. Ahora
vamos a hacer una bsqueda de todos los archivos .avi o .mpg:
#find /home -name '*.mpg' -o -name '*.avi'
Como se sabre, los sistemas Linux son sensibles a las maysculas y minsculas. Las
bsquedas anteriores no muestran archivos en los que el texto AVI este escrito en
maysculas. Cmo hacer una bsqueda que englobe todos los archivos sin distinciones
de maysculas/minsculas? Sustituimos -name por -iname.
#find /home -iname '*.mpg' -o -iname '*.avi'
Aadiendo ms criterios
Estas bsquedas nos pueden devolver decenas o cientos de resultados, por lo que tal veznos interesa afinar ms la bsqueda. El comando find nos brinda esta posibilidad.
Vamos a buscar los archivos avi con tamao superior a 700MB:
#find /home/ -name '*.avi' -a -size +700M
Y ahora, aquellos archivos que se han modificado en los ltimos 15 das:
#find /home/ -name '*.avi' -a -size +700M -mtime -15
Prof: Carlos Jara Alva GNU/LINUX www.idatux.org