#!/usr/bin/perl -w use strict; use Archive::Tar; my $filename = "filename.tar.gz"; my $tar = Archive::Tar->new($filename); my @filenames = $tar->list_files; $tar->extract_file($filenames[0],'temp.out'); open(DATA, "temp.out"); while () { ... } close(DATA);