Comando linux para buscar archivos y carpetas

Vamos a ver algunos de los comandos que nos pueden resultar útiles cuando queremos buscar un archivo y/o carpetas en linux, desde consola.

Código HTML:
 locate

locate archivo.php
Este comando buscar en una “especie de base de datos” donde tiene la ruta de los archivo y así resulta mucho más rápido encontrar los archivos o carpetas que si se tiene que recorrer toda la estructura de directorios.

Hay que tener en cuenta que la “base de datos” del locate puede estar obsoleta. Para actualizarla debemos usar este comando (lo pondré en segundo plano con “&” porque le puede costar en ejecutarse).

Código HTML:
updatedb &

find
El comando find sirve para buscar archivos y directorios pero es muy complejo y tiene muchas opciones, de las cuales sólo explicare algunas.

La ruta de acceso por defecto es el directorio actual (representado con un “. “) y la expresión por defecto es -print. A la hora de buscar, puedes especificar muchos parámetros:

1. el nombre (-name xxx)

Código HTML:
find . -name diviertenet*
2. Si es un archivo o carpeta (-type f -type d)

Código HTML:
find . -type f -name diviertenet*
Código HTML:
find . -type d -name diviertenet*
3. Los permisos que tiene (-perm nnn)

Código HTML:
find . -type d -perm 777
4. El usuario al que pertenece (-user usuario1)

Código HTML:
find . -type f -user usuario1
5. El grupo al que pertenece (-group grupo1)

Código HTML:
find . -type f -group grupo1
6. Si el archivo está vacio (-empty)

Código HTML:
find . -type f -empty
7. El tamaño (-size n[cwbkMG]) siendo
‘b’ para bloques de 512-byte (este es el de por defecto)
‘c’ para bytes
‘w’ para two-byte words
‘k’ para Kilobytes (1024 bytes)
‘M’ para Megabytes (1048576 bytes)
‘G’ para Gigabytes (1073741824 bytes)

Código HTML:
find . -size 21k
8. Modificados los datos en las últimas X*24h (- dtime n)

Código HTML:
find . -tipe f -dtime 2  (en las últimas 48h = 2*24)
9. Accedidos en las últimas X*24h (- atime n)

Código HTML:
find . -tipe f -atime 2  (en las últimas 48h = 2*24)
Recordar que con la ayuda y con el man del comando tendréis toda la información

Código HTML:
find --help
Código HTML:
man find
* whereis

Buscar la localización de un archivo binario, fuente o man

Código HTML:
[root@server ~]# whereis grep
      grep: /bin/grep /usr/share/man/man1/grep.1.gz /usr/share/man/man1p/grep.1p.gz
* which

Buscar la localización de un archivo binario o ejecutable
Código HTML:
      [root@sever ~]# which grep
      /bin/grep