利用perl脚本实现SAC文件头段变量写入

将"ttime.dat"里面的t1(最后一列)写到"./001"的所有"*.sac"中, 并标记为t1, perl脚本如下:

 

#!/usr/bin/env perl
#by liuyi

open(PICK,"<","ttime.dat")||die"cannot open the file:$!\n";

$i=0;
while(<PICK>){
	@lines=split(" ");
	$t1[$i]=@lines[3];
	$i=$i+1;
}
$size=$i;

$j=0;
my $DIR_PATH="/home/*/001";
opendir DIR, ${DIR_PATH}|| die "Can not open dir \n";
@filelist=readdir DIR;
foreach $file (@filelist){

	open(SAC, "| sac") or die "Error in opening SAC\n";
	print SAC "wild echo off \n";
 
	print SAC "r $DIR_PATH/$file \n";
	
	print SAC "ch t1 $t1[$j] \n";
	print SAC "wh \n";
	print SAC "q \n";
 
	close(SAC);
	$j=$j+1;
}

以上,在此做一记录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值