El comando hace una búsqueda recursiva de archivos el comando tiene la siguiente synopsis:
Todos los argumentos son obcionales, simplificando:
find [path] [atributos] [nombre]
Veamos unos ejemplos sencillos de la utilización del comando
Para hacerlo usaremos como path . (directorio actual) atributo -name y como nombre el nombre del archivo a buscar.
find . -name index.html
De valor de salida nos presentará el path de todos los archivos con el nombre index.html en el directorio actual y todos los directorios que contiene.
Si queremos buscar en todo el ordenador
find / -name index.html
Se utiliza el atributo -find
find . -find
Nos listará todos los archivos del directorio
Usando el atributo -type podemos decir que nos busque solo archivos (f), directorios (d), link simbólicos (l), etc.
find . -type d
Nos buscará los directorios que se encuentran dentro del directorio actual
Podemos encontrar los archivos modificados en los los últimos minutos usando -mmin
find / -mmin 10
Nos mostrará los cambions en los últimos 10 minutos en todo el ordenador, en el caso que quisiesemos buscar los archivos que se modificaron hace más de 10 minutos
find . -mmin +10
Para buscar los archivos que se modificaron en los últimos 5 dias, podemos usar el comando -mtime
find . -mtime 5 # Busca los archivos modificados en los últimos 5 dias
find . -mtime +5 # Busca los archivos modificados hace más de 5 dias
Hay muchos más atributos, esto es solo un resumen de los más útiles. Todos estos atributos se pueden combinar para filtrar los resultados de forma más precisa, por ejemplo:
find . -type f -name \*Test\*
Busca todos los archivos que contienen Test en el nombre, en el directorio actual.
find . -name 'dia_*' | xargs -I '{}' mv {} ~/diario
[...]
Desde sublime, si el comando que hemos definido se es subl:
subl directorio/subsirectorio/archico.php:20
Desde vim
vim directorio/subsirectorio/archico.php +20
``
Pasar salida estandar a entada de vim
ls | vi -
y con sublime
ls | subl -
## Usar ncftp para sincronizar archivos
find ~/web/jrogue -type f -mmin -1 -exec sh -c 'ncftpput -R -u user -p pas ftp.juanartero.com /web/jrogue/ {}' \;