Env::Bash is a Perl extension for accessing _all_ bash environment variables.
SYNOPSIS
use Env::Bash;
Standard interface:
my @var = get_env_var( "SORCERER_MIRRORS",
Source => "/etc/sorcery/config", );
print "SORCERER_MIRRORS via get_env_var:n",
join( "n", @var ), "ncount = ", scalar @var, "n";
@var = Env::Bash::SORCERER_MIRRORS
( Source => "/etc/sorcery/config", );
print "SORCERER_MIRRORS via name:n",
join( "n", @var ), "ncount = ", scalar @var, "n";
my @keys = get_env_keys( Source => "/etc/sorcery/config",
SourceOnly => 1, );
print "first 10 keys:n", map { " $_n" } @keys[0..9];
Object oriented interface:
my $be = Env::Bash->new( Source => "/etc/sorcery/config",
Keys => 1, );
my @var = $be->get( "SORCERER_MIRRORS" );
print "SORCERER_MIRRORS via get:n",
join( "n", @var ), "ncount = ", scalar @var, "n";
@var = $be->SORCERER_MIRRORS;
print "SORCERER_MIRRORS via name:n",
join( "n", @var ), "ncount = ", scalar @var, "n";
$be = Env::Bash->new( Keys => 1,);
@var = $be->HOSTTYPE;
print "HOSTTYPE via name:n",
join( "n", @var ), "ncount = ", scalar @var, "n";
if( $be->exists( 'BASH_VERSINFO' ) ) {
print "BASH_VERSINFO =>n ",
join( "n ", $be->BASH_VERSINFO ), "n";
}
my %options = $be->options( [], Keys => 1 );
Tie HASH interface:
my %env = ();
tie %env, "Env::Bash", Source => "/etc/sorcery/config", ForceArray => 1;
my $var = $env{SORCERER_MIRRORS};
print "SORCERER_MIRRORS via tied hash:n",
join( "n", @$var ), "ncount = ", scalar @$var, "n";
$var = $env{HOSTTYPE};
print "HOSTTYPE via tied hash:n",
join( "n", @$var ), "ncount = ", scalar @$var, "n";
while( my( $key, $value ) = each %env ) {
print "$key =>n ", join( "n ", @$value ), "n";
}
Product's homepage
Requirements:
· Perl