Se os arquivos estiverem classificados, faça
comm -23 fileP.txt fileE.txt
comm
compara dois arquivos classificados, procurando linhas que eles têm em comum.
Por exemplo, dado este arquivo de cores cujos nomes começam com consoantes:
blue
green
purple
red
white
yellow
e esta lista de cores cujos nomes terminam com vogais:
blue
indigo
orange
purple
white
o comando comm colors1 colors2
produz esta saída:
blue
green
indigo
orange
purple
red
white
yellow
onde:
a primeira coluna contém cores que começam e terminam com consoantes
(em colors1
mas não colors2
),
a segunda coluna contém cores que começam e terminam com vogais
(em colors2
mas não colors1
),
e a terceira coluna contém cores que começam com consoantes
e terminam com vogais (em colors1
e colors2
).
Para seus arquivos (mostrados na sua pergunta), comm fileP.txt fileE.txt
produz
[email protected]:testtest
[email protected]:testtest0
[email protected]:testtest1
[email protected]:testtest2
[email protected]:testtest3
[email protected]:testtest4
[email protected]:testtest5
As opções são um pouco não intuitivas: -23
significa
suprimir as segunda e terceira colunas, mostrando apenas o primeiro
(linhas que estão no primeiro arquivo, mas não no segundo).
Então,
$ comm -23 fileP.txt fileE.txt
[email protected]:testtest1
[email protected]:testtest4
Observe que isso não funcionará corretamente se os arquivos não estiverem classificados. Se os arquivos não estiverem classificados, classifique-os.