perl命令行参数内建数组@ARGV浅析
来源:爱站网时间:2021-11-30编辑:网友分享
今天傍晚同事问爱站技术小编要一篇perl命令行参数内建数组@ARGV浅析,那么今天带来的这篇文章主要介绍了perl命令行参数内建数组@ARGV浅析,本文重点在于讲解@ARGV的用法,并通过实例来说明,需要的朋友可以参考下
今天傍晚同事问爱站技术小编要一篇perl命令行参数内建数组@ARGV浅析,那么今天带来的这篇文章主要介绍了perl命令行参数内建数组@ARGV浅析,本文重点在于讲解@ARGV的用法,并通过实例来说明,需要的朋友可以参考下
当perl脚本运行时,从命令行上传递给它的参数存储在内建数组@ARGV中,@ARGV是PERL默认用来接收参数的数组,可以有多个参数,$ARGV[0]是表示接收到的第一个参数,$ARGV[1]表示第二个。
使用方法为:
perl my.pl $ARGV[0] $ARGV[1]
看一个具体例子:
比如文件1的内容:
1320238
1320239
1320239
1320238
1320238
1320238
1320235
1320237
1320239
1320239
1320238
1320238
1320238
1320235
1320237
文件2的内容:
102 5709072117805887 4001 1301854
102 5709072117807510 4001 1320292
102 5709072117838653 4001 1301857
102 5709072117814280 4001 1305832
102 5709072117839397 4001 1310673
102 5709072117839335 4001 1311270
102 5709072117807510 4001 1320292
102 5709072117838653 4001 1301857
102 5709072117814280 4001 1305832
102 5709072117839397 4001 1310673
102 5709072117839335 4001 1311270
我想先把文件1的内容读取出来,然后读取文件二的内容,在读取文件2的内容的时候,文件2的最后一列需要包含在上文件1内。
[root@localhost ~]$ perl ex.pl 1.txt 2.txt
[root@localhost ~]$ cat ex.pl
#!/usr/bin/perl
use strict;
[root@localhost ~]$ cat ex.pl
#!/usr/bin/perl
use strict;
open(ONE,"$ARGV[0]") or die $!;
open(TWO,"$ARGV[1]") or die $!;
my %hash;
while (
chomp;
my @line=split;
my $column4=$line[3];
$hash{$column4}=$_;
}
while (
chomp;
print $hash{$_} if defined $hash{$_};
}
print"\n";
以上内容就是爱站技术频道小编为大家分享的perl命令行参数内建数组@ARGV浅析,看完以上分享之后,大家应该都更了解perl命令行参数内建数组@ARGV了吧。