Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
doublons [Le 07/11/2024, 23:30] Amiralgaby l'ancienne section parle d'un script qui ne fonctionne pas. par contre fdupes fonctionne |
doublons [Le 07/11/2024, 23:59] (Version actuelle) Amiralgaby ajout d'une section pour afficher les fichiers ayant des noms en doublons |
||
---|---|---|---|
Ligne 16: | Ligne 16: | ||
find . ! -empty -type f -exec md5sum {} + | sort | uniq -w32 -dD | find . ! -empty -type f -exec md5sum {} + | sort | uniq -w32 -dD | ||
- | <note>simple mais non optimisé si vous avez de beaucoup de gros fichier (le hachage peut-être évité si les fichiers n'ont pas la même taille). Si vous êtes dans la situation où vous avez énormément de gros fichier, préférez le script dans la session ci-dessous</note> | + | <note>simple mais non optimisé si vous avez de beaucoup de gros fichier (le hachage peut-être évité si les fichiers n'ont pas la même taille). Si vous êtes dans la situation où vous avez énormément de gros fichier, préférez [[#Avec fdupes|fdupes]]</note> |
//réponse provenant du site [[https://unix.stackexchange.com/questions/277697/whats-the-quickest-way-to-find-duplicated-files|What's the quickest way to find duplicated files ?]]// | //réponse provenant du site [[https://unix.stackexchange.com/questions/277697/whats-the-quickest-way-to-find-duplicated-files|What's the quickest way to find duplicated files ?]]// | ||
Ligne 31: | Ligne 31: | ||
+ | ===== Afficher les doublons uniquement en comparant les noms des fichiers ===== | ||
+ | Utiliser la commande suivante qui affichera la taille et le chemin des fichiers ayant les mêmes noms. | ||
+ | |||
+ | find . -mindepth 1 -type f -printf '%s %p %f\n' | sort -t ' ' -k 3,3 | uniq -f 2 --all-repeated=separate | cut -d ' ' -f1,2 | ||
+ | |||
+ | <note> | ||
+ | * ''-type f'' pour indiquer à la commande find de ne prendre que les fichiers (pas les répertoires) | ||
+ | * ''%%-printf '%s %p %f\n'%%'' on affiche pour chaque entrée 3 champs (le poids, le chemin et le nom de fichier) séparé par un espace | ||
+ | * ''%%-t ' '%%'' on indique à la commande sort qu'il y a des champs (donc de ne pas trier par ligne mais par un champ spécifique) | ||
+ | * ''-k 3,3'' on prend le 3<sup>ème</sup> champ | ||
+ | * ''-f 2'' pour la commande uniq on se base sur le 2<sup>ème</sup> champ. | ||
+ | * ''cut -d ' ' -f1,2'' on ne garde que les deux premiers champs (le poids et le chemin) | ||
+ | </note> | ||