NAME
App::envfile - runs another program with environment modified according to envfile
SYNOPSIS
$ cat > foo.env
FOO=bar
HOGE=fuga
$ envfile foo.env perl -le 'print "$ENV{FOO}, $ENV{HOGE}"'
bar, fuga
like
$ env FOO=bar HOGE=fuga perl -le 'print "$ENV{FOO}, $ENV{HOGE}"'
DESCRIPTION
App::envfile is sets environment from file.
envfile inspired djb's envdir program.
METHODS
new()
Create App::envfile instance.
my $envf = App::envfile->new();
run_with_env(\%env, \@commands)
Runs another program with environment modified according to \%env
.
$envf->run_with_env(\%env, \@commands);
parse_envfile($envfile)
Parse the envfile
. Returned value is HASHREF.
my $env = $envf->parse_envfile($envfile);
Supported file format are:
KEY=VALUE
# comment
KEY2=VALUE
...
Or more supported Perl
, JSON
and YAML
format. The file format is determined by the extension type. extensions map are:
pl => Perl
perl => Perl
js => JSON
json => JSON
yml => YAML
yaml => YAML
If this list does not match then considers that file is envfile.
Also, if you use YAML
and JSON
, Data::Encoder and YAML or JSON module is required.
AUTHOR
xaicron <xaicron@cpan.org>
THANKS TO
tokuhirom
COPYRIGHT
Copyright 2011 - xaicron
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.