#!/usr/bin/perl use warnings; use strict; my %seen; for my $file (@ARGV) { open my $FH, '<', $file or die $!; while (<$FH>) { chomp; s/,\s*$//; push @{ $seen{$_} }, $file; } } for my $string (grep 1 == @{ $seen{$_} }, keys %seen) { print "$string unique in $seen{$string}[0]\n"; }