У меня есть два текстовых файла, которые почти одинаковы, за исключением некоторых изменений в нескольких строках. Я хотел бы объединить эти два файла в один текстовый файл, выделив различия, чтобы затем просмотреть объединенный файл в редакторе и вручную просмотреть эти различия.
Я полагаю, это будет чем-то похоже на то, что вы обычно получаете от конфликта слияния svn. Например, он file1
содержит:
Top piece of bread
Mayonnaise
Lettuce
Tomato
Provolone
Salami
Mortadella
Prosciutto
Creole Mustard
Bottom piece of bread
И file2
содержит:
Top piece of bread
Mayonnaise
Lettuce
Tomato
Provolone
Sauerkraut
Grilled Chicken
Creole Mustard
Bottom piece of bread
Я ожидаю, что объединенный файл будет содержать что-то вроде:
Top piece of bread
Mayonnaise
Lettuce
Tomato
Provolone
<<<<<<< .file1
Salami
Mortadella
Prosciutto
=======
Sauerkraut
Grilled Chicken
>>>>>>> .file2
Creole Mustard
Bottom piece of bread
Может быть, есть diff
какая-то опция, которую я упустил?
решение1
Окончательная версия, с добавлением OP--changed-group-format
diff old-file new-file --old-group-format='<<<<<<< .old
%<=======
' --new-group-format='=======
%>>>>>>>> .new
' --changed-group-format='<<<<<<< .old
%<=======
%>>>>>>>> .new
'
что приводит к
Top piece of bread
Mayonnaise
Lettuce
Tomato
Provolone
<<<<<< .old
Salami
Mortadella
Prosciutto
=====
Sauerkraut
Grilled Chicken
>>>>>>> .new
Creole Mustard
Bottom piece of bread