perl提取和解析

时间:2016-11-20 01:03:01

标签: xml perl

我是Perl的新手并试图找出脚本的问题。

2.我可以通过命令行逐个接受多个XML进行哪些更改?

3.如何将函数的o / p指向文本文件?

4.如何将函数的o / p指向i / p作为参数的其他函数?

1 个答案:

答案 0 :(得分:1)

首先,您的模块文件,package语句和use语句都应该拼写相同,并且都应以大写字母开头。看起来您的模块文件应该被称为NVD.pm

  1. 您已声明@vuln,而不是%vuln

  2. 您可以通过编写

    值添加到哈希值
    my %vuln;
    
    for ( @ARGV ) {
        %vuln = ( %vuln, NVD::extract($_) );
    }
    

    这将聚合命令行中提到的所有文件的结果

  3. 这取决于你想要什么。 extract的结果是哈希结构,因此您需要以某种方式格式化数据。一般来说,你可以写

    open my $fh, '>', 'output.txt' or die $!;
    
    print ... extracting data from `%vuln` as required
    
    close $fh;
    
  4. 简单地写

    other_function(NVD::extract($_))
    

    或可能

    my %vuln = NVD::extract($_);
    other_function(%vuln);