问题:我有一个特定的文件夹,其中我只有一个具有特定扩展名的文件。该文件生成一个,名称总是变化......
我想将它分配给变量,然后传递给perl中的子程序 我尝试如下
my $ file =“./ abc / default / *。”; 并尝试使用我控制的一个字段
我的$ file =“./abc/def/ ._ $ {username} _。 .xml”;
但我打印文件名....它说* .xml或 ._ name _。 .xml而不是实际的文件名......
有人能告诉我如何解决我的问题。 我是新来的...所以任何帮助都会很棒。 我搜索过其他几个地方,但找不到任何针对这个特定点的内容。
答案 0 :(得分:3)
您想要glob
:
my $file = glob './abc/def/*.xml';
或者也许:
my @files = glob './abc/def/*.xml';
不确定为什么你会遇到$username
部分的问题。 应该扩展该var。 (虽然,我不知道为什么你有_
任何一方。
答案 1 :(得分:0)
您可以使用以下方式打印文件。然后您可以使用它们。
代码:
my @dir = `ls ./abc/def/`;
foreach my $id (@dir)
{
chomp($id);
print "$id\n";
}
希望这会对你有所帮助。