in reply to Initial Hash of Hash by value

If you want to copy nested hashes, consider Storable dclone. For example, if %hash2 looks like this:
%hash2 = ( mammal => { dog => 'a', cat => 'a' }, bird => {...}, ... )
{ %hash2 } will only copy the data 1 level deep. edit: removed link to perl cookbook