#1 Le 11/04/2014, à 22:57
- ReidLos
diff sur des fichiers et dossiers
Salut à tous,
J'aurais besoin d'un coup de main.
J'aimerais à partir d'un script récupérer la liste des fichiers et dossiers supprimés entre deux arborescences.
Exemple :
Arborescence 1 :
- Dossier 1
- Sous-dossier 1
- Fichier 1
- Dossier 2
- Sous-dossier 1
- Fichier 1
Arborescence 2 :
- Dossier 1
- Dossier 2
Comme vous pouvez voir, les sous dossiers ont été supprimés, j'aimerais obtenir comme résultat :
/dossier 1/Sous dossier 1/
/dossier 1/Sous dossier 1/Fichier 1
/dossier 2/Sous dossier 1/
/dossier 2/Sous dossier 1/Fichier 1
Je sais qu'il y a des outils de comparaison, je viens donc à la pèche aux infos ici, n'ayant pas trouvé exactement ce que je voulais sur le net.
Par exemple KDiff fais ce que je veux, mais je n'arrive pas à exporter le résultat ...
Merci à vous !
Hors ligne
#2 Le 12/04/2014, à 07:50
- pingouinux
Re : diff sur des fichiers et dossiers
Bonjour,
Voici une piste :
diff <(cd arbo1;find|sort) <(cd arbo2;find|sort)
qui donne avec ton exemple :
3,4d2
< ./dossier 1/Sous dossier 1
< ./dossier 1/Sous dossier 1/Fichier 1
6,7d3
< ./dossier 2/Sous dossier 1
< ./dossier 2/Sous dossier 1/Fichier 1
On peut éventuellement filtrer le résultat ensuite. Par exemple :
diff <(cd arbo1;find|sort) <(cd arbo2;find|sort) | sed -n 's/^< *//p'
./dossier 1/Sous dossier 1
./dossier 1/Sous dossier 1/Fichier 1
./dossier 2/Sous dossier 1
./dossier 2/Sous dossier 1/Fichier 1
Ajouté :
Tu as aussi ceci
comm -23 <(cd arbo1;find|sort) <(cd arbo2;find|sort)
Dernière modification par pingouinux (Le 12/04/2014, à 07:59)
Hors ligne