você poderia fazer algo pior do que essa solução awk
de duas passagens
awk 'NR == FNR{if ($2 in a) b[$2]++;a[$2]++; next}; $2 in b' file file
Na primeira passagem, use a matriz b
para acompanhar os valores de hash encontrados mais de uma vez. Na segunda passagem, imprima um registro se o hash existir em b
Alternadamente
sort -k2,2 file | uniq -f 1 -D
que envolve classificar o arquivo pelo segundo campo e canalizar para uniq
para imprimir todos os registros duplicados (ignorando o primeiro campo enquanto compara via -f 1
). Dado o tamanho do seu arquivo de entrada, isso pode se tornar muito intensivo em recursos