use strict; use warnings; chomp( my @lines = do { local @ARGV = 'mongo.tab'; <> } ); my @headers = split /\t/, shift @lines; my @records = map [ split /\t/ ], @lines; 1;