#!/usr/bin/perl -w use strict; my %wanted; while () { exists $wanted{$_} ? delete $wanted{$_} : $wanted{$_}++; } print sort keys %wanted; __DATA__ a1a a1a b1b c1c c1c d1d d1d e1e f1f g1g g1g h1h h1h i1i j1j #### b1b e1e f1f i1i j1j #### perl -ne 'exists $x{$_}?delete $x{$_}:$x{$_}++;}{print for sort keys %x;' < input.txt > output.txt