package MyPackage; ... sub variables { my %SKIP = ( # list var names that you want to ignore ); for my $var (sort(keys(%MyPackage::))) { if (defined(${$var}) && !defined($SKIP{$var})) { print "\$$var = ${$var}\n" } } }