But I would like to pass all the below files only; j*.1.txt j*.3.txt j*.a.txt etc..
These examples all have only 1 character between the dots. If you just want that then you can amend the glob to look for that:
my @files = <data/j*.?.txt>;
OTOH, if you want to pass arbitrary globbing patterns you could do that in @ARGV but you'll need to quote them on invocation.
#!/usr/bin/env perl use strict; use warnings; my @files = <data/j*.*.txt>; if (@ARGV) { @files = map { <data/$_> } @ARGV; } print "Using @files";
$ ./gt.pl Found data/j.a.txt data/j.foo.txt data/j.xyz.txt $ ./gt.pl 'j*.?.txt' Using j*.?.txt instead Found data/j.a.txt
See map for more on its usage.
🦛
In reply to Re: How to Pass more than one file in perl MY function
by hippo
in thread How to Pass more than one file in perl MY function
by prad001
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |