Comparar dois arquivos no Linux

0

Estou tentando comparar o arquivo A com o arquivo de padrão B e mostrar as linhas correspondentes do arquivo A. X pode ser substituído por 0 e 1 no arquivo B. O arquivo A não contém nenhum não cuida. O arquivo B é um arquivo grande.

Por exemplo:

Arquivo A:

010101

011111

000000

111111

Arquivo B:

X11XX1

01010X

000000

Alguém pode me ajudar?

    
por Farshad 03.07.2016 / 09:57

1 resposta

1

Para encontrar as linhas de fileA que correspondem a qualquer um dos padrões no fileB, em que X é interpretado como um caractere curinga:

$ grep -f <(tr X . <fileB) fileA
010101
011111
000000
111111

<(tr X . <fileB) cria um objeto semelhante a um arquivo que tem todo o X substituído por . . Em expressões regulares, . é um curinga.

grep -f <(tr X . <fileB) fileA lê padrões de nosso objeto semelhante a arquivo e só imprime linhas do arquivo A que correspondem a um desses padrões.

    
por 03.07.2016 / 10:16

Tags