0
我有散,看起来像这样:Perl的哈希
$VAR1 = {
'638047' => {
'commands' => 'perl nSWIFT/bin/tqtest.pl -var clist=',
},
'638049' => {
'commands' => 'perl nSWIFT/bin/tqtest.pl-var clist=',
}
};
我想创建一个目录,该文件的名称与哈希值开始,它存储,使用运行命令生成的数字给出为perl nswift/bin/tqtest.pl -var clist=
。这些数字应该与他们的密钥存储在同一个文件中。例如:
'638047' -> '638050' and '638049' -> '638051'
那么它应该相应地存储。
它已经尝试过,但没有到达那里。
my %stat
my @qbsid_filename = keys %stat;
foreach (@qbsid_filename){
open QBS, ">/root/qbsid/$_";
}
my $newqbsid, @files;
opendir (DIREC, '/root/qbsid') or die $!;
foreach my $qbsid (keys %stat){
my $cmd = $stat{$qbsid}->{commands};
if ($cmd =~ m/perl(.*)/){
$ex_cmd = $1;
}
$newqbsid = qx | perl $ex_cmd|;
}
close (DIREC);
我对算法不太好。所以,发现它很困难。 请告诉我,如果我错了某处或您需要更多信息。谢谢。
什么是 ' - |'在'打开我的$ qbsid',' - ','$ cmd''语句?谢谢。 – deep
'open my $ fh,' - |',“$ cmd”'是推荐'打开我的$ fh'的方法,$ cmd |“',请查看'perldoc -f open'获取更多详细信息。 –
它不工作,因为它们是哈希引用散列。但是你只是指定它为一个单一的哈希结构。如果我错了,请纠正我。谢谢。 – deep