求助
以下是我写的一个脚本,其中naslfiles.txt是一个文件名列表,依次读入每个nasl文件,每个nasl文件都有script_id,有的nasl文件里面有script_cve_id,有的没有,现在可以在屏幕上输出,如何写入到一个文件里面呢?
#!/usr/local/perl
$passfile="naslfiles.txt";
open(FILE, "$passfile");
@lines=<FILE>;
close(FILE);
foreach $line(@lines)
{
($value)=$line=~/(.*)/;
if($value)
{
$naslfiles=$value;
#print "$naslfiles\n";
open(PFILE, "$naslfiles");
@content=<PFILE>;
close(PFILE);
open(QFILE, ">naslvscve2.txt");
foreach $line(@content)
{
# script_id
($value)=$line=~/^\s*script_id\((\d+)/;
if($value)
{
$hash{"script_id"}=$value;
$script_id=$hash{"script_id"};
#print "$script_id\t";
}
# script_cve_id
($value)=$line=~/^\s*script_cve_id\((.*)\)/;
if($value)
{
$hash{"script_cve_id"}=$value;
$script_cve_id=$hash{"script_cve_id"};
print "$script_id\t$script_cve_id\n";
}
}
}
}