in reply to sprintf to hash

Use hex and I think you need to re-work your logic...
use warnings; use strict; my %lsmapHash; while (<DATA>) { chomp; if (/^vhost/i) { my $vh = (split)[0]; my $clid = (split)[2]; my $cltid = sprintf '%d', hex $clid; $lsmapHash{$vh} = { 'clientID' => $cltid, }; } } use Data::Dumper; $Data::Dumper::Sortkeys=1; print Dumper(\%lsmapHash) +; __DATA__ SVSA Physloc Client Pa +rtition ID --------------- -------------------------------------------- --------- +--------- vhost10 U9117.MMD.218A8B7-V1-C2 0x0000000b VTD vtscsi25 Status Available LUN 0x8100000000000000 Backing device l02duapXXXX_r1.58ff94782d7c325acc49a8dd9c04bb1e Physloc Mirrored N/A VTD vtscsi26 Status Available LUN 0x8200000000000000 Backing device l02duapofdev_b1.0ee86903d4951ce38a9b691b322ff1d2 Physloc Mirrored N/A