#!/usr/bin/perl -w use strict; my %rets; open(RL, "/home/myftplog") or die "Unable to open input file : $!" my @fields = qw ( FNAME RECLEN LIAISON_EMAIL LIAISON_FNAME LIAISON_LNAME LIAISON_AREACODE LIAISON_PHONE LIAISON2_EMAIL LIAISON2_FNAME LIAISON2_LNAME LIAISON2_PHONE RETNAME RETAILER_EMAIL LIAISON2_AREACODE RETAILER2_EMAIL FTPCHECK RETID SCRIPT_NAME EXECFLAG FREQUENCY FILE_NUMBER ); while () { chomp; next if /^$/; my @vals = split /:/; $vals[0] ||= '_001'; my %temp_hash; @temp_hash{ @fields } = @vals; $hash{ $vals[0] } = \%temp_hash; } print $_, $/ for keys %rets;