30 lines
683 B
Perl
30 lines
683 B
Perl
#!/usr/bin/perl
|
|
use warnings;
|
|
use strict;
|
|
|
|
sub list_files {
|
|
die "Function called in void context" unless defined wantarray;
|
|
my $path = shift;
|
|
|
|
return unless defined $path;
|
|
chomp $path;
|
|
$path.='/*' unless $path =~/\*/;
|
|
my @files = glob $path;
|
|
return wantarray?@files:\@files;
|
|
}
|
|
|
|
my $path = $ARGV[0] || print("Enter Path: ") && <>;
|
|
|
|
# call subroutine in list context
|
|
print "Get files as list:\n";
|
|
my @files = list_files($path);
|
|
foreach (sort @files) {
|
|
print "\t$_\n";
|
|
}
|
|
|
|
# call subroutine in scalar context
|
|
print "Get files as scalar:\n";
|
|
my $files = list_files($path);
|
|
foreach (sort @{$files}) {
|
|
print "\t$_ \n";
|
|
} |