InicioLinuxScript bash:archivos repetidos y moverlos a directorio

Script bash:archivos repetidos y moverlos a directorio

Linux2/22/2015
En ocasiones nuestro sistema cuenta con respaldos duplicados, manteniendo almacenada la misma información ocupando espacio innecesariamente en nuestro ordenador con multitud de archivos repetidos de todo tipo (fotos, documentos, videos…), que nos pueden llevar toda una vida organizar. Ahora con tan solo unas pocas lineas de código, podemos realizar ese trabajo rápidamente, adaptándolo a nuestras necesidades, pudiendo modificar los parámetros para realizar la búsqueda con un filtro definido y moverlos al directorio que deseemos, y después realizar el mantenimiento planificado de backup que se requiera. El registro de los archivos que se mueven, quedan en una bitácora que se guarda en un archivo creado en el mismo directorio donde se encuentra el script original. A ese registro con las operaciones realizadas le llamaremos directorios.dat Explicado linea a linea, podemos ir entendiendo como funciona: #!/bin/bash j=0 #Contador, que te permite mantener un identificador de nombre único, para el archivo a mover for i in $(find /home -type f -name "Nombre_Archivo_Buscar" ) ; # Buscar todos los archivos recursivamente teniendo como origen para este ejemplo la carpeta /home do let j=j+1 #Incrementando el contador para el "ID" del nombre del archivo. mv $i /ruta/destino/carpeta/Nombre_Archivo_Buscar$"_"$j -v >> directorios.dat; # Movemos el archivo $i a la ruta /ruta/destino/carpeta/ # El archivo original es pasado a la ruta de destino, armándolo con la cadena fija del nombre del archivo a buscar, concatenado con el carácter "_" mas el valor del contador utilizado para armarlo con un consecutivo. done; Una vez creado el script necesario que modificamos lo permisos del mismo, para permitir su ejecución. chmod +x script Ahora simplemente nos falta probarlo y/o adaptarlo a nuestros requerimientos. No es la barita mágica de Harry Potter, pero puede cumplir con alguna de las necesidades de mantenimiento de nuestras copias de seguridad. ./script En la siguiente imagen podemos apreciar los pasos necesarios para implementar el script. Vamos a utilizar tmux para poderlo ver todo en una sola ventana: Y aquí tenéis el código del script, tan solo teneis que copiarlo en un editor de texto, guardarlo y seguir los pasos que comentábamos antes para personalizarlo a vuestro gusto: # !/bin/bash j=0 for i in $(find /home -type f -name "Nombre_Archivo_Buscar" ) ; do let j=j+1 mv $i /ruta/destino/carpeta/Nombre_Archivo_Buscar$"_"$j -v >> directorios.dat; done;
Datos archivados del Taringa! original
0puntos
0visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

j
jjm66🇦🇷
Usuario
Puntos0
Posts1,916
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.