Existe um utilitário rápido baseado em Unix (idealmente escrito em C) para obter uma interseção / união eficiente e contínua de arquivos de texto delimitados por tabulação?
Por exemplo, permita consultas como "me dê todas as entradas que no arquivo A tem um valor de coluna K que não aparece em nenhuma coluna K do arquivo B".
Por exemplo, se o arquivo A for:
bob sally sue
bob mary john
e o arquivo B é:
john sally sue
foo bar quux
então o complemento do arquivo A relativo a B na coluna 2 retornaria "bob mary john", já que é o único no arquivo B que tem um valor na coluna 2 que não aparece no arquivo B.
Eu prefiro não usar um banco de dados, mas gostaria de um utilitário baseado em linha de comando. O AWK é a resposta ou existe algo mais simples?
Tags command-line database shell unix