perl命令行参数内建数组@ARGV浅析
作者:junjie 时间:2022-11-04 06:58:47
当perl脚本运行时,从命令行上传递给它的参数存储在内建数组@ARGV中,@ARGV是PERL默认用来接收参数的数组,可以有多个参数,$ARGV[0]是表示接收到的第一个参数,$ARGV[1]表示第二个。
使用方法为:
perl my.pl $ARGV[0] $ARGV[1]
看一个具体例子:
比如文件1的内容:
1320238
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
我想先把文件1的内容读取出来,然后读取文件二的内容,在读取文件2的内容的时候,文件2的最后一列需要包含在上文件1内。
[root@localhost ~]$ perl ex.pl 1.txt 2.txt
[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 (<TWO>) {
chomp;
my @line=split;
my $column4=$line[3];
$hash{$column4}=$_;
}
while (<ONE>) {
chomp;
print $hash{$_} if defined $hash{$_};
}
print"\n";
标签:perl,命令行,内建数组,@ARGV
0
投稿
猜你喜欢
如何在CocosCreator中做一个List
2024-04-28 09:46:04
Python实现提取Excel指定关键词的行数据
2022-09-01 10:15:59
python实现批量图片格式转换
2021-07-15 16:07:42
Pytorch中torch.nn.Softmax的dim参数用法说明
2023-08-28 04:20:10
深入理解Python中range和xrange的区别
2023-06-22 06:10:09
python全栈要学什么 python全栈学习路线
2023-07-03 17:55:19
python匿名函数lambda原理及实例解析
2023-01-05 02:55:07
Python 函数绘图及函数图像微分与积分
2021-07-13 22:53:14
python+numpy实现的基本矩阵操作示例
2023-07-16 13:52:37
使用 pytorch 创建神经网络拟合sin函数的实现
2023-02-04 03:31:40
python 如何在测试中使用 Mock
2022-01-08 07:41:09
Django中文件上传和文件访问微项目的方法
2021-04-15 10:44:45
Python Cookie 读取和保存方法
2021-01-21 15:57:51
python中的[1:]、[::-1]、X[:,m:n]和X[1,:]的使用
2023-12-10 00:48:42
不同操作系统下的mysql数据库同步
2008-12-22 14:41:00
php flv视频时间获取函数
2023-09-04 13:41:48
pytorch 实现查看网络中的参数
2023-10-28 22:08:37
python 监控服务器是否有人远程登录(详细思路+代码)
2022-05-16 04:08:26
浅谈Golang的方法传递值应该注意的地方
2024-02-12 07:40:20
PyQT实现多窗口切换
2023-04-14 02:40:32