use strict; use Data::Dumper; my %hostlist; { local $/; %hostlist = =~ /^(\w+)\s(.*)/gm; } print Dumper(\%hostlist); __DATA__ host1 1.1.1.1 host2 1.2.3.5