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 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