file1, que contém uma única string por linha. Quero verificar se cada string existe na segunda coluna de file2. file2 contém duas strings separadas por espaços simples por linha, mas algumas linhas podem ter espaços iniciais antes da primeira coluna.
Quero usar apenas grep e/ou cut para executar a correspondência e gerar linhas correspondentes de file2 para newFile.txt, garantindo a correspondência de palavras inteiras (-w).
Eu tentei
grep -wF -f file1 file2 > newFile.txt
mas devido ao tamanho do arquivo o terminal roda infinitamente.
Eu também tentei
grep -wF -f <(cut -d ' ' -f 2 file2) | grep -wF -f - file2 > newFile.txt
Isso só funciona para algumas linhas no arquivo2 porque algumas linhas têm vários espaços antes das duas strings, embora essas strings sejam separadas apenas por um único espaço.
Arquivo1:
aaa
bbb
ccc
Arquivo2:
a aaa (should match)
b bbb (should match and does but the former spaces throws off cut -d, resulting in incomplete output of line in the newFile.txt)
c cc (should not match)
Pergunta: Como posso extrair e combinar eficientemente palavras inteiras na segunda coluna de file2.txt, enquanto lido com espaços iniciais inconsistentes? Prefiro usar grep e/ou cut, mas estou aberto a pequenas modificações.