我正在阅读由其他人编写的 Perl 脚本,但我对 Perl 不太熟悉,所以有人可以让我知道前三行是做什么的吗?
my $ref = do($filename);
$ref != 0 or die "unable to read/parse $filename\n";
@varLines=@{$ref};
foreach $ord (@varLines)
{
# code here
}
这是在程序开头的
$filename
之后设置为获取命令行参数传递给此脚本的文件格式为
[
{
"Key1" => "val1",
"key2" => " "A",
},
{
"Key3" => "val2",
"key4" => " "B",
},
]
最佳答案
它这样做:
my $ref = do($filename)
执行名为 $filename
的文件中的 Perl 代码( ref ) 并分配给 $ref
文件中最后一个命令的值 $ref != 0 or die …
如果 $filename
中的最后一个命令打算中止没有成功(请参阅下面的评论进行讨论)@varLines=@{$ref};
假设 $ref
是对数组的引用并初始化 @varLines
到该数组的内容 foreach $ord (@varLines) { … }
为数组中的每一项执行一些代码,调用每个 $ord
在循环期间 至关重要的是,这完全取决于名称在
$filename
中的文件中的内容。 .
关于perl - 这个 Perl 脚本实现了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1744340/