Capítulo 5. Los utilitarios de la línea de comandos

Tabla de contenidos
5.1. grep: General Regular Expression Parser
5.2. find: busca archivos en función de ciertos criterios
5.3. crontab: reportar o editar su archivo crontab
5.4. at: programar un comando, pero solo una vez
5.5. tar: Tape ARchiver (Archivador de cinta)
5.6. bzip2 y gzip: comandos de compresión de datos
5.7. Mucho, mucho más...

El propósito de este capítulo es introducir un número pequeño de herramientas de la línea de comandos que pueden resultar ser útiles para el uso diario. Por supuesto, puede saltar este capítulo si tiene la intención de usar sólo un entorno gráfico, pero un pequeño vistazo puede cambiar su opinión :-)

En realidad este capítulo no está organizado. Los utilitarios se indican sin un orden en particular, desde los más usados hasta los más complejos. Cada comando se ilustrará con un ejemplo, pero se le deja como ejercicio encontrar usos más útiles para ellos.

5.1. grep: General Regular Expression Parser

Analizador Sintáctico General de Expresiones Regulares

De acuerdo, el nombre no es muy intuitivo, tampoco su acrónimo, pero su uso es simple: buscar el patrón pasado como argumento en uno o más archivos. Su sintaxis es:

grep [opciones] <patrón> [uno o más archivos]

Si se mencionan varios archivos, su nombre aparecerá antes de las líneas que muestran los resultados que se corresponden con el criterio de búsqueda. Use la opción -h para ocultar estos nombres; use la opción -l para mostrar sólo los nombres de archivo en los cuales se cumple la condición de búsqueda. Puede ser útil, especialmente en listas de argumentos largas, recorrer los archivos con un bucle del shell y usar el truco siguiente: grep <patrón> <nombre_de_archivo> /dev/null. El patrón es una expresión regular, aunque generalmente consiste en una palabra simple. Las opciones usadas más frecuentemente son las siguientes:

Aquí tiene un ejemplo de como usarlo:

$ cat mi_padre
Hola papá
Hola papi
Adiós papá

  # Buscar la cadena "hola", sin distinguir entre mayúsculas y minúsculas
$ grep -i hola mi_padre
Hola papá
Hola papi

  # Buscar "papá" como palabra completa, e imprimir el número de línea 
  #   al principio de cada coincidencia
$ grep -nw papá mi_padre
1:Hola papá
3:Adiós papá

  # Queremos que coincidan todas las líneas que no comiencen con una "H"
$ grep -v "^H" mi_padre
Adiós papá
$

En caso que quiera usar grep en una tubería, no tiene que especificar el nombre del archivo ya que, predeterminadamente, toma su entrada desde la entrada estándar. Similarmente, de manera predeterminada, imprime los resultados en la salida estándar, por lo que puede meter la salida de un grep por una tubería a otro programa más sin miedo. Ejemplo:

$ cat /usr/share/doc/HOWTO/Parallel-Processing-HOWTO | \
  grep -n thread | less

Notas

[1]

Distinción entre las mayúsculas y las minúsculas.


Tux sobre Estrella por MandrakeSoft Linux es una marca registrada de Linus Torvalds. Todas las otras marcas registradas y copyrights son la propiedad de sus respectivos dueños.
A menos que se diga lo contrario, todo el contenido de estas páginas y todas las imágenes tienen Copyright de MandrakeSoft S.A. y de MandrakeSoft Inc. 2000.
http://www.linux-mandrake.com/