Oct 13 2008

Mover todos los archivos encontrados a un directorio en la consola de Linux {

Tag: Bash, Mini Tips

Hoy alguien me preguntaba como mover todos los archivos encontrados en uno o más directorios usando el comando find y tenía una idea de como hacerlo, pero no tenía una máquina con Linux para probarla, en realidad es algo muy simple, en este caso moveremos todas las fotos encontradas en /home/nuevosprogramadores y todos sus subdirectorios a una nueva ubicación en /home/nuevosprogramadores/fotos y lo haremos con una sola línea.

$ mv `find /home/nuevosprogramadores -iname *.jpg ` /home/nuevosprogramadores/fotos

Ahora vamos a identificar las partes de ésta línea, primero el comando mv que se encarga de mover ficheros:

$ mv origen destino


ahora el comando find, tal cual lo usamos:

$ find directorio-origen -iname nombre-archivo


Lo que hicimos fue concatenar ambos comandos, utilizando la salida del comando find como entrada del comando mv, para lo cual encerramos al comando find con las comillas simples: “ resumiendo, nuestro comando sería:

$ mv `find directorio-origen -iname nombre-archivo` destino

Una aclaración más, el parámetro iname se utiliza para buscar por nombre ignorando mayúsculas y minúsculas.

}


Página 1 de 11