Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comparaison de 2 fichiers

4 réponses
Avatar
KEVIN0366
Bonjour,

J'ai besoin de comparer deux fichiers FILE1 et FILE2 sur un serveur SERVER1, dit de référence, dans lesquels se trouvent deux arborescences à comparer.

FILE1 contient l'arborescence de référence :

Voici FILE 1 (à droite la taille) :

rep1 4096
rep1/fichier4.sh 375
rep1/fichier6.sh 551
rep1/fichier9.sh 332
rep1/rep11 4096
rep1/rep11/fichier1.sh 239
rep1/rep11/tutu.sh 19
 
Et FILE2 (en fait il contient l'arborescence concernée sur un second serveur), j'ai créé FILE2 sur le serveur de référence et je compare les deux fichiers :

rep2 4096
rep2/fichier4.sh 375
rep2/fichier6.sh 644
rep2/fichier9.sh 332
rep2/rep11 4096
rep2/rep11/fichier1.sh 239
rep2/rep11/rep22 4096
rep2/rep11/fichier.new.sh 6
 
Du fait que les bons fichiers sont dans FILE1, je souhaite faire remonter que :

1°) rep1/fichier6.sh doit avoir comme taille 551 (ou plus simplement rep1/fichier6.sh : 551)
2°) rep1/rep11/tutu.sh est dans la référence mais pas dans FILE2
3°) en revanche fichier.new.sh n'existe pas dans FILE1 donc on s'en moque, pas d'alerte le concernant.

En fait :
- tout ce qui est différent dans FILE1 par rapport à FILE2 doit remonter (c'est FILE1 la référence).
- tout ce qui existe dans FILE1 mais pas dans FILE2 doit remonter aussi.

J'ai tenté un sdiff mais c'est pas vraiment exploitable à grande échelle et pas bien lisible.

SERVER1:~ kevin$ sdiff -s FILE1 FILE2
rep2 4096 | rep1 4096
rep2/fichier4.sh 375 | rep1/fichier4.sh 375
rep2/fichier6.sh 644 | rep1/fichier6.sh 551
rep2/fichier9.sh 332 | rep1/fichier9.sh 332
rep2/rep11 4096 | rep1/rep11 4096
rep2/rep11/fichier1.sh 239 | rep1/rep11/fichier1.sh 239
rep2/rep11/rep22 4096 | rep1/rep11/tutu.sh 19
rep2/rep11/fichier.new.sh 6 <


Si j'arrivais à trouver une commande (ou un petit script) qui me donne quelque chose de beaucoup plus simple, genre :

rep1/fichier6.sh : taille 551
rep1/rep11/tutu.sh : n'existe pas sur mon serveur client

... ce serait vraiment bien.

Un de vous a t-il une idée ?

Merci beaucoup.

4 réponses

Avatar
ptilou
Crosse poste sur configuration ou sur Debian !
Avatar
David Larochette
Le 15/08/2020 à 23:33, KEVIN0366 a écrit :
Bonjour,
J'ai besoin de comparer deux fichiers FILE1 et FILE2 sur un serveur SERVER1, dit
de référence, dans lesquels se trouvent deux arborescences à comparer.
FILE1 contient l'arborescence de référence :
Voici FILE 1 (à droite la taille) :
rep1 4096
rep1/fichier4.sh 375
rep1/fichier6.sh 551
rep1/fichier9.sh 332
rep1/rep11 4096
rep1/rep11/fichier1.sh 239
rep1/rep11/tutu.sh 19
Et FILE2 (en fait il contient l'arborescence concernée sur un second serveur),
j'ai créé FILE2 sur le serveur de référence et je compare les deux fichiers :
rep2 4096
rep2/fichier4.sh 375
rep2/fichier6.sh 644
rep2/fichier9.sh 332
rep2/rep11 4096
rep2/rep11/fichier1.sh 239
rep2/rep11/rep22 4096
rep2/rep11/fichier.new.sh 6
Du fait que les bons fichiers sont dans FILE1, je souhaite faire remonter que :
1°) rep1/fichier6.sh doit avoir comme taille 551 (ou plus simplement
rep1/fichier6.sh : 551)
2°) rep1/rep11/tutu.sh est dans la référence mais pas dans FILE2
3°) en revanche fichier.new.sh n'existe pas dans FILE1 donc on s'en moque, pas
d'alerte le concernant.
En fait :
- tout ce qui est différent dans FILE1 par rapport à FILE2 doit remonter (c'est
FILE1 la référence).
- tout ce qui existe dans FILE1 mais pas dans FILE2 doit remonter aussi.
J'ai tenté un sdiff mais c'est pas vraiment exploitable à grande échelle et pas
bien lisible.
SERVER1:~ kevin$ sdiff -s FILE1 FILE2
rep2 4096 | rep1 4096
rep2/fichier4.sh 375 | rep1/fichier4.sh 375
rep2/fichier6.sh 644 | rep1/fichier6.sh 551
rep2/fichier9.sh 332 | rep1/fichier9.sh 332
rep2/rep11 4096 | rep1/rep11 4096
rep2/rep11/fichier1.sh 239 | rep1/rep11/fichier1.sh 239
rep2/rep11/rep22 4096 | rep1/rep11/tutu.sh 19
rep2/rep11/fichier.new.sh 6 <
Si j'arrivais à trouver une commande (ou un petit script) qui me donne quelque
chose de beaucoup plus simple, genre :
rep1/fichier6.sh : taille 551
rep1/rep11/tutu.sh : n'existe pas sur mon serveur client
.. ce serait vraiment bien.
Un de vous a t-il une idée ?
Merci beaucoup.

Peut-être avec
rsync -avn
?
xpost + fu2 sur fr.comp.os.linux.configuration
Avatar
ptilou
Le lundi 17 août 2020 à 05:44:52 UTC+1, David Larochette a é crit :
Le 15/08/2020 à 23:33, KEVIN0366 a écrit :
Bonjour,
J'ai besoin de comparer deux fichiers FILE1 et FILE2 sur un serveur SER VER1, dit
de référence, dans lesquels se trouvent deux arborescences à comparer.
FILE1 contient l'arborescence de référence :
Voici FILE 1 (à droite la taille) :
rep1 4096
rep1/fichier4.sh 375
rep1/fichier6.sh 551
rep1/fichier9.sh 332
rep1/rep11 4096
rep1/rep11/fichier1.sh 239
rep1/rep11/tutu.sh 19
Et FILE2 (en fait il contient l'arborescence concernée sur un seco nd serveur),
j'ai créé FILE2 sur le serveur de référence et je c ompare les deux fichiers :
rep2 4096
rep2/fichier4.sh 375
rep2/fichier6.sh 644
rep2/fichier9.sh 332
rep2/rep11 4096
rep2/rep11/fichier1.sh 239
rep2/rep11/rep22 4096
rep2/rep11/fichier.new.sh 6
Du fait que les bons fichiers sont dans FILE1, je souhaite faire remont er que :
1°) rep1/fichier6.sh doit avoir comme taille 551 (ou plus simpleme nt
rep1/fichier6.sh : 551)
2°) rep1/rep11/tutu.sh est dans la référence mais pas da ns FILE2
3°) en revanche fichier.new.sh n'existe pas dans FILE1 donc on s'e n moque, pas
d'alerte le concernant.
En fait :
- tout ce qui est différent dans FILE1 par rapport à FILE2 do it remonter (c'est
FILE1 la référence).
- tout ce qui existe dans FILE1 mais pas dans FILE2 doit remonter aussi .
J'ai tenté un sdiff mais c'est pas vraiment exploitable à gra nde échelle et pas
bien lisible.
SERVER1:~ kevin$ sdiff -s FILE1 FILE2
rep2 4096 | rep1 4096
rep2/fichier4.sh 375 | rep1/fichier4.sh 375
rep2/fichier6.sh 644 | rep1/fichier6.sh 551
rep2/fichier9.sh 332 | rep1/fichier9.sh 332
rep2/rep11 4096 | rep1/rep11 4096
rep2/rep11/fichier1.sh 239 | rep1/rep11/fichier1.sh 239
rep2/rep11/rep22 4096 | rep1/rep11/tutu.sh 19
rep2/rep11/fichier.new.sh 6 <
Si j'arrivais à trouver une commande (ou un petit script) qui me d onne quelque
chose de beaucoup plus simple, genre :
rep1/fichier6.sh : taille 551
rep1/rep11/tutu.sh : n'existe pas sur mon serveur client
.. ce serait vraiment bien.
Un de vous a t-il une idée ?
Merci beaucoup.
Peut-être avec
rsync -avn
?
xpost + fu2 sur fr.comp.os.linux.configuration

Slt,
Je crois que les nouvelle version de diff le fait ?
Sinon un du -ha /ron_rep > listing-réponse.txt
La même avec l’autre
Puis comparer avec diff
Donc man diff

Ptilou
Avatar
Membre fictif
Le 16/08/20 à 07:33, ptilou a écrit :
Crosse poste sur configuration ou sur Debian !

on se mettrait à plusieurs pour étudier le fichier tutu.
rep1/fichier6.sh : taille 551
petit fichier, petite étude.
on peut surement le faire à la main, distribuez les cartes on fera ça
aux pièces.
--
--
Pourquoi la fonctionnalité X n’est pas disponible ?