A função libc realpath()
pode fazer a maior parte do trabalho resolvendo todos os links simbólicos; escreva um script semelhante a este para filtrar resultados exclusivos:
#!/usr/bin/env perl
use Cwd;
my %files = map {Cwd::realpath($_) => 1} @ARGV;
my @files = sort keys %files;
# This example will run: mycommand arg1 arg2 file1 file2 file3 arg3
system {"mycommand"} "mycommand", "arg1", "arg2", @files, "arg3";
A lista de arquivos é obtida dos argumentos da linha de comando.
uniquefiles.pl mydirectory/*