in reply to File::Find Questions
I don't know how to do that with File::Find, which I seldom use, as I find the syntax a bit unwieldy. But if you don't mind doing it with a simple subroutine, here's an example which'll work:
use strict; use warnings; + my_find("/home/liverpole"); + sub my_find { my $dir = shift; opendir(FH, $dir) or die "Failed to open '$dir' ($!)\n"; my @files = readdir(FH); closedir FH; + my $show_n_files = 2; foreach (@files) { next if ($_ eq '.' or $_ eq '..'); my $path = "$dir/$_"; if (-f $path and $show_n_files) { print "$path\n"; --$show_n_files; } elsif (-d $path) { my_find($path); } } }
Here, the variable $show_n_files can be set to the total number of files you wish to display from each directory. You can use a -1 if you want to display all the files.
|
|---|