open my $in => "zcat $file |" or die; open my $out => "| more" or die; while (<$in>) { # do something. print $out $_ or die; } close $in or die; close $out or die;