Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 25/09/2017, à 13:56

brouers

suppression de doublon

bonjour
je viens d'installer Ubuntu 16.04 LTS et je débute...
je cherche une application me permettant de supprimer des doublons (essentiellement des pdf) dont les noms sont différents (donc en analysant le contenu) dans le même répertoire ou dans deux répertoires différents
et avec une interface graphique car je sais que j'en ai beaucoup
j'ai essayé fslint mais il ne m'a donné  que peu de résultats et pas un seul pdf ; peut-être une question de paramétrage
merci pour votre aide

Hors ligne

#2 Le 25/09/2017, à 16:23

LukePerp

Re : suppression de doublon

brouers a écrit :

je cherche une application me permettant de supprimer des doublons (essentiellement des pdf) dont les noms sont différents (donc en analysant le contenu)

Bonjour, chercher des doublons pdf avec noms différents ne sera pas facile. Je pense qu'il serait plutot judicieux de chercher des doublons à partir d'un hash check sum, genre md5. Ce qui évitera les faux positifs.


Desktop & Laptop - Ubuntu Mate dernière LTS - Intel i5 - 16 Go - Dual boot Windows offline

Hors ligne

#3 Le 25/09/2017, à 16:27

Brunod

Re : suppression de doublon

Oui, Pinguinux m'avait développé un petit script bash qui faisait ça très bien. Je reposte si je retrouve le lien...

Edit : Je n'ai pas retrouvé, voici copie de mon script (Merci à Pinguinux ! )

#!/bin/bash
# V. 25/12/2015 Se lance dans l'arborescence à examiner
# attention aux espaces et ' dans noms; mettre entre guillemets (et encore...)
# Comparaison des tailles et des md5sum des (10000) 10 premiers Koctets et 2 Mo finaux des fichiers
while IFS=@ read -r siz fic
do
   printf "%s@%s@%s\n" "$siz" "$(md5sum < <(head -c 2000000 "$fic" ; tail -c 2000000 "$fic"))" "$fic"
#   printf "%s@%s@%s\n" "$siz" "$(md5sum < <(head -c 10000 "$fic"))" "$fic"
done < <(find "$@" -type f -printf "%10s@%p\n" | sort -rn | uniq -D -w10) | sort -t@ -k1,1nr -k2,2 | uniq -D -w43 >/tmp/tmp1.$$

# Comparaison des md5sum des fichiers complets
while IFS=@ read -r siz md5 fic
do
   printf "%s@%s\n" "$siz" "$(md5sum "$fic")"
done </tmp/tmp1.$$ | sort -t@ -k1,1nr -k2,2 | uniq -D -w43 |
awk 'BEGIN{print"#!/bin/bash"}{if(s!=$1){t=$1;sub("@.*","",t);printf("\n# Longueur : %10s\n",t);s=$1}{$1="";sub(" ","");print "#rm \""$0"\""}}' > _rem-duplicates.sh
cat _rem-duplicates.sh 
#chmod a+x $OUTF; ls -l $OUTF
rm /tmp/tmp1.$$

Ce script scanne un répertoire, trie sur base des tailles de fichiers et en cas de fichiers de mêmes tailles, essaie de les distinguer par un md5sum. Si rien ne les distingue, ils sont considérés comme doublons et sont repris dans un script listant tous les doublons pour effacement. Celui-ci est nommé _rem-duplicates.sh et créé dans le répertoire courant puis affiché.
Editer le script pour ôter la mise en commentaire (et donc activer la ligne) des fichiers à effacer.
Modifier les droits pour rendre exécutable et exécuter pour effacer d'un coup tous les doublons ainsi choisis.

Dernière modification par Brunod (Le 25/09/2017, à 16:39)


Windows est un système d'exploitation de l'homme par l'ordinateur. Linux, c'est le contraire...
39 pc linux convertis

Hors ligne

#4 Le 26/09/2017, à 02:31

brouers

Re : suppression de doublon

merci
je vais tenter ce script qui pour moi reste complètement mystérieux, vu que je viens de  renaître dans le monde ubuntu après une première longue vie sur la planète windows

Hors ligne

#5 Le 26/09/2017, à 07:40

pingouinux

Re : suppression de doublon

Bonjour,
Brunod parle sans doute de cette longue discussion de fin 2015 : awk : problème formatage nombres

Hors ligne

#6 Le 26/09/2017, à 13:54

Brunod

Re : suppression de doublon

Bonjour Pinguinux,
Effectivement, c'est bien cela. Je ne retrouvais pas le fil, mais le script, même si je m'en sers assez rarement, je ne risque pas de le perdre ! smile


Windows est un système d'exploitation de l'homme par l'ordinateur. Linux, c'est le contraire...
39 pc linux convertis

Hors ligne

#7 Le 26/09/2017, à 13:59

Caribou22

Re : suppression de doublon

brouers a écrit :

merci
je vais tenter ce script qui pour moi reste complètement mystérieux, vu que je viens de  renaître dans le monde ubuntu après une première longue vie sur la planète windows

Bonjour smile
N'hésite pas à poser des questions si besoin.
J'ai quitté Windows en 2013 et je ne me suis toujours pas intéressé aux scripts donc je manquerais encore d'infos si c'était moi que ça concernait tongue

Hors ligne