Bash: borrar ficheros duplicados
Este script publicado en el blog shell-fu.org lo pongo aquí no solo por su función en sí de borrado de ficheros duplicados que puede ser interesante y útil si no porque es un script interesante con varias opciones unidas que dan un punto de vista didáctico a este script.
En este script se usan varios comandos como pueden ser find +xargs, sort, sed y uniq con algunas opciones interesantes y poco utilizadas por lo general.
OUTF=rem-duplicates.sh;
echo "#! /bin/sh" > $OUTF;
find "$@" -type f -print0 |
xargs -0 -n1 md5sum |
sort --key=1,32 | uniq -w 32 -d --all-repeated=separate |
sed -r 's/^[0-9a-f]*( )*//;s/([^a-zA-Z0-9./_-])/\\\1/g;s/(.+)/#rm \1/' >> $OUTF;
chmod a+x $OUTF; ls -l $OUTF
Articulos similares:
- Contar ficheros recursivamente en el directorio actual (4 febrero 2009)
- Comparar dos directorios en Bash (14 enero 2009)
- Find, bucles for y espacios en Bash (21 marzo 2008)
- Mandar email desde Bash con formato HTML (13 enero 2009)
- Bash: cambio de extensión masivamente (25 marzo 2009)
Publicado: 27 de marzo de 2009 | Categorias: Sistemas → Bash
Revisado: 14 de febrero de 2010 | etiquetas: Bash, Shell, Sistemas, Trucos, Utilidades
Revisado: 14 de febrero de 2010 | etiquetas: Bash, Shell, Sistemas, Trucos, Utilidades
































