Как я могу дифф два файла с полным контекстом?

голоса
17

У меня есть два файла с небольшими различиями. Нормальные diffпокажут мне различия между файлами. С -cили -uя могу добавить количество контекста для каждого ломтя. Какие варианты я могу пройти , diffчтобы увидеть все без изменений линии наряду с изменениями, и получить дифф как один большой ломоть?

Задан 09/12/2008 в 23:45
источник пользователем
На других языках...                            


3 ответов

голоса
21

Вы также можете переопределить различия поведения форматирования, чтобы получить желаемое поведение без использования бока о боке режим:

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

Эта команда покажет вам полный файл как контекст и быть ближе в формате diff -u file1 file2

Ответил 10/12/2008 в 00:14
источник пользователем

голоса
21

Используйте «-y» вариант для полной бок о бок продукции

дифф -y file1 file2

Дам вам выход что-то вроде

* 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.
Ответил 09/12/2008 в 23:58
источник пользователем

голоса
3

Решение состоит в том, чтобы установить размер контекста (-U аргумент), который больше, чем сам файл:

diff -U 1000000 file1.txt file2.txt
Ответил 29/11/2017 в 06:55
источник пользователем

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