Muchas veces necesito buscar dentro de archivos logs o incluso dentro de mis propias notas que a propósito hago en texto plano (sin formato con extensión .txt) usando Gedit o el mismo comando
vi así que grabe en mi memoria este comando.
- Usando una terminal o consola (gnome-terminal) escriba el siguiente comando.
$ find . -type f -exec grep -i PALABRA {} \; -print |
DONDE:
find = El comando para encontrar cosas desde la lina de comandos
. = Le indica que inicie la busqueda desde la posicion en donde este ubicado (use el comando pwd para saber en que directorio esta y use el comando cd para moverse entre directorios).
-type = Le indica al comando find que busque dentro de algun tipo especifico de archivos.
f = Le indica que el tipo de archivo es file.
-exec = Le indica a find que ejecute otro comando dentro de cada archivo encontrado.
grep = El comando que permite buscar dentro de un archivo palabras o frases concretas (para frases es necesario usar comillas dobles "" )
-i = Le indica a grep que la palabra a buscar no importa que tenga mayúsculas o minúsculas.
{} \; = Le indica a find que termino la cadena de ejecución del comando exec.
-print = Muestra en que archivo se encontro la busqueda
Un ejemplo:
$ cd /var/adm
$ find . -type f -exec grep -i "err" {} \; -print
(...)
Aug 26 20:08:01 lab sendmail[20814]: [ID 801593 mail.crit] o7R081SO020812: SYSERR(root): lab.lab.com. config error: mail loops back to me (MX problem?)
Aug 27 20:08:01 lab sendmail[26862]: [ID 801593 mail.crit] o7S08187026860: SYSERR(root): lab.lab.com. config error: mail loops back to me (MX problem?)
./messages.3
(...)
Algunas ayudas adicionales son:
- Pagina que construye un comando find.
http://find.unixpin.com/
- Tutorial de comando find :
find_mini_tutorial.shtml
- Algunas opciones mas del comando find:
bigadmin/shellme/ sección searching items.
- Pagina del comando man para find :
http://docs.sun.com/
