bash, Linux: defina a diferença entre dois arquivos de texto
Eu tenho dois arquivosA
-nodes_to_delete
eB
-nodes_to_keep
. Cada arquivo possui muitas linhas com IDs numéricos.
Quero ter a lista de IDs numéricos que estão emnodes_to_delete
mas NÃO emnodes_to_keep
, por exemplo.texto alternativo http://mathworld.wolfram.com/images/equations/SetDifference/Inline1.gif.
Fazê-lo dentro de um banco de dados PostgreSQL é excessivamente lento. Alguma maneira legal de fazer isso no bash usando as ferramentas CLI do Linux?
ATUALIZAR: Isso parece ser um trabalho Pythonic, mas os arquivos são realmente muito grandes. Eu resolvi alguns problemas semelhantes usandouniq
, sort
e algumas técnicas da teoria dos conjuntos. Isso foi cerca de duas ou três ordens de magnitude mais rápido que os equivalentes do banco de dados.