in reply to getting files recursively from a directory structure

You could make it so:

#!/usr/bin/env perl use strict; use warnings; use IO::All; use Storable; use Set::Scalar; my $dir = shift || die $!; my $io = io($dir); my @listing = map { $_->name } $io->all_files(0); my $file = qq(./listing.dat); if ( !-e $file ) { store \@listing, $file; exit; } my $old_listing = retrieve($file); my $new_set = Set::Scalar->new(@listing); my $old_set = Set::Scalar->new(@$old_listing); my $difference = $new_set - $old_set; my $union = $old_set + $new_set; @listing = $union->elements; store \@listing, $file; print join qq(\n), $difference->elements; __END__

Please see also IO::All, Storable, Set::Scalar, map, join and perlreftut.

Regards, Karl

Edit: added shebang.

«The Crux of the Biscuit is the Apostrophe»