Como agrupar as linhas “Somente em” no diff no início da saída

0

eu fiz:

diff -r directory1/ directory2/

Alguns arquivos são diferentes e alguns arquivos estavam em uma ou outra árvore, criando várias Only in ... linhas.

Como eu agrupo essas linhas no começo do arquivo? Tenho 99,9% de certeza de que nenhum diretório contém nenhuma linha que comece com Only in . Eu estava pensando em algo como:

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

Mas isso os remove, em vez de agrupá-los. E sort também não faz o que eu quero, porque quero manter as comparações reais em sua ordem.

    
por durron597 18.03.2014 / 14:31

1 resposta

1

Uma abordagem pode ser redirecionar a saída diff para um arquivo e usar grep para separar as duas partes:

diff -r directory1/ directory2/ > temp
{ grep '^Only in' temp; grep -v '^Only in' temp; } > diff.output
    
por 18.03.2014 / 14:44