[commande]afficher la différence entre 2 file

bonjour ,
je cherche une commande qui m'affiche sur la meme console , en meme temps , 2 fichirers en indiquant les différences si ca existe .

on me l'a montré une fois mais je ne la retrouve plus !!!

kkun peut m'aider svp

8 réponses

  1. Modérateur
    Sinon dans "vim", tu ouvres ton 1er fichier et tu tapes :
    :vert diffsplit 2ndfichier
    T'auras le résultat que tu souhaites, à savoir tes 2 fenêtres et ton "long pipe" au milieu ;-))
    1
    1. Modérateur
      Salut,
      diff fich1 fich2
      "man diff" pour de plus amples renseignements ;-))
      0
      1. merci pour la réponse , j'ai dejà jetté un coup d'oail sur diff , et cmp mais c pas exactement ce que je cherche ,

        le commande que je cherche affiche les 2 fichiers l'un à droite l'autre à gauche spéparé par une longue pipe
        0
        1. merci infiniment :)

          c excellent sauf que mes fichiers contiennent dans les 2500000 lignes et apparement ca plante !

          je n'arrive pas à voire les lignes qui ne sont pas identiques !

          kkun a une idée comment faire pour des gd fichiers :)
          0
          1. Modérateur
            Salut,

            il faut peut être essayer avec un script.

            lami20j

            P.S. Il sera bien d'avoir les fichiers s'ils ne contient pas des donnes sensibles
            0
            1. Modérateur
              Re-

              Alors si tes fichiers ne contiennent pas des données sur de grandes lignes (phrases), mais par contre des valeurs ou des mots (2-3 max), tu peux regarder du côté de la commande "comm".
              Elle compare les lignes de 2 fichiers et les affichent sous forme de colonnes ("man comm" pour plus de détails) :
              jp@Mandrake:~/tmpfs ssh$ cat essai.txt
              1
              2,5
              3
              4
              5
              6
              7
              8
              9
              10
              
              jp@Mandrake:~/tmpfs ssh$ cat essai_2.txt
              1
              2
              3
              4
              5
              6,5
              7
              8
              9
              10
              
              jp@Mandrake:~/tmpfs ssh$ comm  essai.txt essai_2.txt
                              1
                      2
              2,5
                              3
                              4
                              5
              6
                      6,5
                              7
                              8
                              9
                              10
              
              jp@Mandrake:~/tmpfs ssh$ comm  -3 essai.txt essai_2.txt
                      2
              2,5
              6
                      6,5
              jp@Mandrake:~/tmpfs ssh$
              ;-))
              0
              1. la commande que tu cherche est sdiff : man sdiff
                0
                1. Modérateur
                  Espérons qu'il l'ait trouvé depuis 4 ans ;-\
                  0
                2. Modérateur
                  Salut,

                  Oui, mais il y a 4 ans il n'avait pas la commande sniff ;-DD
                  0
                3. Modérateur
                  ;-))
                  0
                4. comme dit jypycy dans Vim mais la commande plus simple est

                  vimdiff fichier1 fichier2
                  0
              2. Contributeur
                Salut,

                man diff fait état de l'option --side-by-side, qui ressemble à ce que tu dis.

                Dal
                -1