Perl 读写 .gz .tgz 等压缩文件

原文来自:http://qyiyunso.blog.163.com/blog/static/350776862010111511336701/

1. 使用PERL直接读取压缩文件 use pipe
.gz格式文件

1
open(FIN,"gzip -dc $infilename|") or die ("can not open $infilename\n");

.tgz(.tar.gz)格式文件

"tar -xf $infilename -o|";

7zip格式文件

"7za e -so $infilename|";

这个可以直接用

2. 用PerlIO包
1)在*.pl前加上

1 2
use lib "/libPath";
use PerlIO::gzip;


2)在用的时候:

1 2
open FIottom:0px; margin-left:0px; padding-top:0px; padding-right:0px; padding-bottom:0px; padding-left:0px; color:rgb(51, "<:gzip""$fi";
open FO">:gzip""$fo";

3. 用 File::Package;

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
#!/usr/bin/perl -w
use strict;
 
use FilePackage;
 
my $uut='Tie::Gzip';
$fp'File::Package'->load_package($uut;
 
tie *GZIP$gzip=\*GZIP"> test.gz"while($line=<>){
chomp print"$line\n"}
close *OUT$out\*OUTprint $out "I want to kNow more!\n"
;

相关文章

1. 如何去重 #!/usr/bin/perl use strict; my %hash; while(...
最近写了一个perl脚本,实现的功能是将表格中其中两列的数据...
表的数据字典格式如下:如果手动写MySQL建表语句,确认麻烦,...
巡检类工作经常会出具日报,最近在原有日报的基础上又新增了...
在实际生产环境中,常常需要从后台日志中截取报文,报文的形...
最近写的一个perl程序,通过关键词匹配统计其出现的频率,让...