是否可以将一个选项作为数组而不是标量变量?
喜欢,我想将文件名作为选项,使用'-file',用户将输入通配符,例如“tmp * .txt”。现在我想在数组中存储与“tmp * .txt”相匹配的内容。有可能吗?
答案 0 :(得分:1)
不是真的。但是你可以在使用之前glob
这个论点,它几乎可以做你想要的:
my @files = glob $options{file};
foreach my $file (@files) {
...
}
如果您的参数不包含*
之类的任何通配符,它将像以前一样工作。但如果您提供了*
,则globbing将自动扩展。
唯一的缺点是你必须在单引号或双引号中引用参数,例如:-file "tmp*.txt"
,否则shell会插入你的全局。
答案 1 :(得分:0)
不确定。但是为什么要将它存储在List中呢?
无论如何,这是你如何将它存储在数组中:
my @list = ('FILE',);
print $list[0]; # prints FILE