Wie kann ich diff zwei Dateien mit vollem Kontext?

stimmen
17

Ich habe zwei Dateien mit kleinen Unterschieden. Ein normales diffzeigt mir die Unterschiede zwischen den Dateien. Mit -coder -ukann ich eine Menge von Kontext zu jedem Stück hinzuzufügen. Welche Möglichkeiten kann ich passiere diffjede unverändert Linie neben den Änderungen zu sehen, und die diff als ein einzigen, großen Brocken bekommen?

Veröffentlicht am 09/12/2008 um 23:45
quelle vom benutzer
In anderen Sprachen...                            


3 antworten

stimmen
21

Sie können auch die diff Formatierungsverhalten außer Kraft setzen Ihre gewünschte Verhalten zu erhalten, ohne Side-by-Side mit Modus:

diff --new-line-format='+%L' --old-line-format='-%L' --unchanged-line-format=' %L' file1 file2

Mit diesem Befehl erhalten Sie die vollständige Datei als Kontext zeigen und am nächsten im Format sein, diff -u file1 file2

Beantwortet am 10/12/2008 um 00:14
quelle vom benutzer

stimmen
21

Verwenden Sie die „-y“ Option für die vollständige nebeneinander Ausgang

diff -y Datei1 Datei2

Geben Sie die Ausgabe so etwas wie

* Lorem ipsum dolor sit amet, consectetuer adipiscing elit.     * Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
* Praesent fringilla facilisis pede.                            * Praesent fringilla facilisis pede.
* Nulla sit amet tellus id massa luctus pellentesque.           * Nulla sit amet tellus id massa luctus pellentesque.
* Pellentesque a neque nec elit aliquam congue.                 * Pellentesque a neque nec elit aliquam congue.
* Quisque rhoncus ultricies elit.                               * Quisque rhoncus ultricies elit.
* Pellentesque laoreet urna id arcu.                            * Pellentesque laoreet urna id arcu.
* Aenean non erat et elit egestas dictum.                       * Aenean non erat et elit egestas dictum.
* Proin ornare sem eget nulla.                                  * Proin ornare sem eget nulla.
* Phasellus placerat convallis elit.                            * Phasellus placerat convallis elit.
* Donec ultricies metus non purus.                              * Donec ultricies metus non purus.
* Sed vel enim et nunc accumsan egestas.                        * Sed vel enim et nunc accumsan egestas.
* Cras eget elit in purus luctus ornare.                        * Cras eget elit in purus luctus ornare.
* In pharetra ligula sodales pede.                            <
* Morbi consectetuer mi vitae sem.                              * Morbi consectetuer mi vitae sem.
* Donec sollicitudin pretium erat.                              * Donec sollicitudin pretium erat.
* Cras facilisis nunc sed leo.                                  * Cras facilisis nunc sed leo.
* Nunc varius ante sed nisi.                                    * Nunc varius ante sed nisi.
                                                              > THIS SHOULDN'T BE HERE
                                                              > THIS SHOULDN'T EITHER!
* Aenean in quam sagittis est ornare ultricies.                 * Aenean in quam sagittis est ornare ultricies.
* Etiam dignissim scelerisque velit.                            * Etiam dignissim scelerisque velit.
* Mauris porta fringilla sapien.                                * Mauris porta fringilla sapien.
* Proin vitae nisl vitae mauris viverra tempor.                 * Proin vitae nisl vitae mauris viverra tempor.
* Maecenas quis arcu sed lorem mollis bibendum.                 * Maecenas quis arcu sed lorem mollis bibendum.
* Morbi sed turpis non risus molestie posuere.                | * Morbi sed non risus molestie posuere.
* Curabitur id magna in nulla commodo tristique.                * Curabitur id magna in nulla commodo tristique.
* Praesent quis nulla vel augue faucibus viverra.             | * Praesent quis nulla BAD vel augue faucibus viverra.
* Sed interdum libero.                                        | * Sed lacinia interdum libero.
                                                              > ANOTHER ADDITION
* Donec ultricies posuere arcu.                                 * Donec ultricies posuere arcu.
* Etiam interdum auctor mi.                                     * Etiam interdum auctor mi.
Beantwortet am 09/12/2008 um 23:58
quelle vom benutzer

stimmen
3

Die Lösung ist ein Kontextgröße (-U Argument) zu setzen, die größer ist als die Datei selbst ist:

diff -U 1000000 file1.txt file2.txt
Beantwortet am 29/11/2017 um 06:55
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more