find . -type d -empty -print0 | xargs -0 rmdir
martes, noviembre 18, 2008
Eliminar Todos Directorios Vacios
jueves, junio 01, 2006
Buscar archivos y directorios por consola, comando find
Mucha gente depende de aplicaciones gráficas para buscar archivos / directorios en Linux. Con find se puede buscar por consola y filtrar todo lo que nosotros queramos e incluso ejecutar comandos. Os voy a contar como usarla ya que mucha gente lo desconoce y es algo de conocimiento casi obligado :
find Busca archivos o directorio filtrando con estas opciones:
find: Busca archivos , directorio e incluso texto, usando estas opciones de find:
-type d/f/l –> Especifica que es un directorio (d) / fichero (f) / enlaces (l)
-name "Documents" –> Lo que buscamos (Distingue entre mayusculas y minusculas)
-iname "Resumen" –> Lo que buscamos (NO distingue entre mayusculas y minusculas)
-print –> Que lo muestre por pantalla (No suele ser necesario)
-size +10k –> Que sea superior a 10 Kb
-atime +5 –> Que se haya accedido hace 5 dias
-exec –> Ejecuta una comando –> … -exec cp {} /tmp \; –> {} –> Archivos de la busqueda
-ok –> Ejecuta un comando (Pide confirmacion) –> -ok cp {} /tmp \;
-user usuario –> Filtra por dueño de directorio/archivo
-group grupo –> Filtra por grupo
Ejemplos:
Busca en /home/busi/ todos los archivos mp3 usados desde hace 5 dias de un tamaño superior a 30 kb, los copia y los deja en /home/busi/copia
find /home/busi/ -type f -atime +5 -size +30k -name "*.mp3" -exec cp {} /home/busi/copia \;
Lo mismo que el anterior pero preguntando antes de ejecutarlo
find /home/busi/ -type f -atime +5 -size +200k -name "*" -ok cp {} /home/busi/copia \;
<>
Buscar por grupos:
find /home/ -type l -group busigrupo -name "*" -print
Con ejecutar un comando,.. me refiero a cualquier comando, script,..
echo "Archivo encontrado" > tempi
find /home/busi/ -type f -size -40000k -name "*CACA.avi" -exec mutt -s {} busilezas@gmail.com <>
Recibido Mail –> N 6 root@busindre.com- Fri May 19 02:31 37/1956 /home/busi/SGAE_CACA.avi
Contenido del mail –> encontrado -exec mutt -s /home/busi/tema_sensible.mp3
Buscar texto:
find SGAE -type f -exec grep "http" {} /dev/null \;
Resultado: SGAE:http://youtube.com/watch?v=5t2kuQuh5Ts
Como vemos se pueden hacer muchas cosas, juntarlo con scripts,… Solo hemos de pensarlas un poco y conseguiremos grandes resultados, espero que os haya gustado. Un saludo!
http://www.tuxhuellas.com/