my(%site1)=@_; my(%site2)=@_; #### sub x { my(%site1)= %{$_[0]}; my(%site2)= %{$_[1]}; ... } x(\%hash1,\%hash2); #### use Data::Dumper; print Dumper(\%site1);