我是perl的初学者。 只是想了解以下代码。
sub get_files {
foreach my $customer (keys %customers){
lg("Getting files from ftp for customer $customer", "LOG");
my $ftp_server = $customers{$customer}{'FtpServer'};
my $ftp_user = $customers{$customer}{'FtpUser'};
my $ftp_pass = $customers{$customer}{'FtpPass'};
my $datadir = $datafiles.$customer."/";
`$get_files $ftp_server $ftp_user $ftp_pass $datadir`;
}
}
上面子例程中的最后一行告诉了什么?
答案 0 :(得分:1)
它调用字符串$get_files
中的命令,将剩余字符串作为参数传递给命令。
通常如果要捕获结果输出并将其存储在变量中,则使用它。在丢弃结果的情况下,更常见的是使用system
代替:
system $get_files, $ftp_server, $ftp_user, $ftp_pass, $datadir;
虽然如果该命令确实产生了任何输出,它将出现在屏幕上,而不是被反向标记运算符吸收。