#!/usr/bin/perl -- use strict; use warnings; use Data::Dumper; use File::Temp qw/ tempdir /; print $], "\n"; my $dir = tempdir; chdir $dir or die $!; touch( qw/ hi.txt there.txt you.txt / ); opendir my($d), $dir or die $!; foreach my $ix (-1 .. 6) { printf "seekdir(%3d) = %d => %s\n", $ix, seekdir($d, $ix), DD( [ readdir $d ] ); } print '#' x 33,"\n"; sub DD { scalar Data::Dumper->new([@_])->Indent(0)->Useqq(1)->Dump ; } sub touch { for my $file ( @_ ){ open my($fh), '>', $file or die $!; close $fh; } } __END__