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/10/2024, 21:15] 154.45.213.108 [En une ligne] |
doublons [Le 07/11/2024, 23:59] (Version actuelle) Amiralgaby ajout d'une section pour afficher les fichiers ayant des noms en doublons |
||
---|---|---|---|
Ligne 11: | Ligne 11: | ||
===== En ligne de commande ===== | ===== En ligne de commande ===== | ||
- | |||
- | //Les deux sections sont tirés des réponses 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 ?]]// | ||
==== En une ligne ==== | ==== En une ligne ==== | ||
Ligne 18: | 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 ?]]// | ||
+ | |||
+ | ==== Avec fdupes ==== | ||
+ | |||
+ | Ce logiciel permet de donner les doublons en se basant sur le poids et la somme de hachage des fichiers. | ||
+ | |||
+ | [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt>fdupes]]** | ||
+ | |||
+ | Pour l'utiliser récursivement dans un dossier | ||
+ | fdupes -R . | ||
+ | |||
+ | |||
+ | |||
+ | ===== 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 | ||
- | ==== Avec un script ==== | + | <note> |
- | Ce script ne réalise le hachage du fichier que si la taille de deux fichiers sont égaux. | + | * ''-type f'' pour indiquer à la commande find de ne prendre que les fichiers (pas les répertoires) |
- | [[https://github.com/taltman/scripts/blob/master/unix_utils/find-dupes.awk|find-dupes.awk (Github)]] | + | * ''%%-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> | ||
- | Alterner le commentaire dans le script afin d'utiliser ''md5_exec = "md5sum"'' | ||
- | <code> | ||
- | ## md5_exec = "md5" | ||
- | md5_exec = "md5sum" | ||
- | </code> |