Как сгруппировать строки «Только в» в diff в начале вывода

181
durron597

Я сделал:

diff -r directory1/ directory2/ 

Некоторые файлы отличаются, а некоторые файлы были только в одном дереве или другом, создавая несколько Only in ...строк.

Как мне сгруппировать эти строки в начале файла? Я на 99,9% уверен, что ни один каталог не содержит строки, начинающейся с Only in. Я рассматривал что-то вроде:

diff -r directory1/ directory2/ | grep -v `^Only in` 

Но это удаляет их, а не группирует их. И sortне делает то, что я хочу, потому что я хочу сохранить фактические сравнения в их порядке.

0

1 ответ на вопрос

1
devnull

One approach might be to redirect the diff output to a file and then use grep to segregate the two parts:

diff -r directory1/ directory2/ > temp { grep '^Only in' temp; grep -v '^Only in' temp; } > diff.output 
Спасибо! Возможно ли сделать это в одну строку? Не важно, просто любопытно. durron597 10 лет назад 0
@ durron597 Не могу придумать! devnull 10 лет назад 0

Похожие вопросы