V
e
r

l
i
s
t
a
d
o

tractatus@lapipaplena:/# _

 

find

Buscar archivos o directorios

$ find / -iname archivo
Busca en / archivo sin distinguir minusculas y mayusculas
$ find /home -name *.png -print
Buscará en /home todos los archivos “.png” y mostrará la ruta
$ find . -name "*.bak" -exec rm {} \;
buscará en el directorio todos los acabados en .bak y los borrará. la instrucción "-exec" seguido del comando a ejecutar. los corchetes {} se refiere a los ficheros que find ha encontrado y la barra invertida seguido de punto y coma \; indica el final de la instrucción
$ find . ! -iname “*.png” ! -name “*.jpg”
Buscar en el directorio actual todos los archivos menos los acabados en png y jpg
$ find . -type f -iname '*.txt' -o -iname '*.pdf'
buscar en el directorio actual y subdirectorios todos los .txt y los .pdf
$ find . -amin -15
Buscar los que se ha accedido en los últimos 15 minutos
$ find . -atime 15
Buscar los que se accedió por última vez hace 15 dias
$ find / -amin -10
Los que se ha accedido los últimos 10 minutos
$ find . -type f
Buscar ficheros
$ find . -type d
Buscar directorios
$ find / -iname fichero 2>/dev/null
buscar redireccionando los avisos de permiso denegado a /dev/null
$ find . -iname "*.txt" -or -iname "*.odt" -exec cp {} documentos \;
Buscar los txt y los odt y copiarlos a la carpeta documentos
$ find . -type d -exec chmod 0755 {} \;
Cambiar permisos de todos los directorios y subdirectorios
$ find . -type f -exec chmod 0644 {} \;
Cambiar permisos de todos los ficheros del directorio y de los subdirectorios
$ find . -type f -iname "*.bak" | xargs rm
buscar los ficheros acabados en .bak y borrarlos. xargs hace lo mismo que exec pero usando una tuberia.
$ find /home/usuario -name * | xargs grep "tractatus"
buscar cadena de caracteres "tractatus" dentro de todos los archivos de /home/usuario
$ find /home/usuario -iname '*.bak' -delete
Otra forma de borrar todos los .bak de un directorio
$ find . -type f -iname *.sla
buscará los ficheros .sla
$ find . -type f -mtime 0
Buscará los ficheros creados o modificados hoy
$ find / -type f -mtime -1 -print
Los modificados las últimas 24 horas
$ find / -mtime +2 -print
Los modificados hace más de dos dias
$ find -L . -type l
Buscar enlaces rotos
$ find -name "#*#" -print -delete
suprimir todos los que empiecen por *
$ find -name "*~undo-tree~" -print -delete
en emacs todos los bufers que han dejado rastros *undo-tree*
$ find . –type l
lo mismo
$ find . -type l -delete
eliminat todos los enlaces rotos
$ find . -type f -size +300k > masde300k.txt
buscar .sh mayores de 300k
$ find ./ -name .svn -exec rm -rf {} \;
eliminar todos los directorios y subdirectorios subversión
$ find . -name "*.html" -exec grep -i -H "Tractatus elementalis" {} \;
Buscar en todos los archivos html del directorio actual con un texto concreto
$ find . -name \*.txt -exec sed -i "s/cosa/casa/g" {} \;
Substituir “cosa” por “casa” en todos los .txt del presente directorio
$ find ~/ -depth -type f -empty
Buscar archivos vacios. Con -type d buscará directorios vacios
$ find / -name "algo" -a ! -path "/media/servidor/*" -exec echo {} \; 2>/dev/null
Buscar "algo" descartando el directorio /media/servidor/
$ find /home/usuario -iname '*.odt' -exec cp '{}' /home/usuario/Documentos \;
Copiar todos los odt a la carpeta Documentos
$ find . -type f -amin -5 ! -path "./.*"
Buscar ficheros modificados los últimos 5 minutos descartando los ocultos
$ find . ! -name "plantilla*" -type f -delete | find . ! -name HTMLS -type d -delete
borrar todos menos los "plantilla*" y el directorio "HTMLS"
$ find -L /sys/bus/pci/devices/*/ata*/host*/target* -maxdepth 3 -name "sd*" 2>/dev/null | egrep block |egrep --colour '(ata[0-9]*)|(sd.*)'
Encontrar qué /dev/sda, sdb, etc. corresponde al ATA/SATA declarado en dmesg, etc para determinar qué disco duro es
Navegando por staredsi.eu aceptas las cookies que utilizamos en esta web. Más información: Ver política de cookies
[0] 0:bash*
2845 entradas - Acerca del Tractatus
La Pipa Plena 2024