具有多行的变量。删除perl中的前两行

具有多行的变量。删除perl中的前两行,perl,unix,solaris,Perl,Unix,Solaris,我有一个sql查询的结果。它返回大约10行,如下所示: 如果我在perl脚本中执行以下操作 print $result 它给了我输出: key value ----------- ------------------------------ 1428116300 0003000 560779655 0003001

我有一个sql查询的结果。它返回大约10行,如下所示:

如果我在perl脚本中执行以下操作

print $result
它给了我输出:

 key       value                            
 ----------- ------------------------------ 
  1428116300 0003000                        
   560779655 0003001                        
   173413463 0003002                        
      315642 0003003                        
  1164414857 0003004                        
   429589116 0003005 
我只想确认删除前两行。并将每行的其余部分存储在一个数组中。 任何人都可以告诉我如何做到这一点吗?

比如:

my @lines = split /\n/, $result;
splice @lines,0,2;

说明:

split/\n/,$result
正在将变量切割成一个行数组


grep/^[\s\d]+$/
正在筛选此数组,并且只保留一行空格或数字的元素(从而删除前两行)

数据独立的小迂回方式:如果在文件中打印$result,您可以

use Tie::File;

tie @lines, Tie::File, $file or die "can't update $file: $!";
delete $lines[1];
delete $lines[2];

(未测试)

@Orabig.Thank。逻辑正常。但我只想删除前两行。我不想在这里使用grep。我将更改您的答案。