#!/usr/bin/perl my %exp_vars = ( A => 'SCALAR', B => 'SCALAR', C => 'SCALAR', D => 'ARRAY', ); my $env; foreach my $var (keys %exp_vars) { my $type = $exp_vars{$var}; my $val = lc $var; if (! defined $ENV{$var} or length($ENV{$var}) <= 1) { push @out, "# [$var] not exported"; next; } if ($type eq 'ARRAY') { @{$env->{$val}} = ($ENV{$var} =~ m/(?:\s+)?(\S+)/g); } elsif ($type eq 'SCALAR') { $env->{$val} = $ENV{$var}; } }