ShellScript-Env
view release on metacpan or search on metacpan
PATH=/usr/local/opt/egcs/bin:$PATH
MANPATH=/usr/local/opt/egcs/man:$MANPATH
LIBPATH=/usr/local/opt/egcs/lib:$LIBPATH
INFOPATH=/usr/local/opt/egcs/info:$INFOPATH
export PATH MANPATH LIBPATH INFOPATH
and /usr/local/opt/egcs.csh that will contain:
set path = (/usr/local/opt/egcs/bin $path)
setenv MANPATH /usr/local/opt/egcs/man:$MANPATH
setenv LIBPATH /usr/local/opt/egcs/lib:$LIBPATH
setenv INFOPATH /usr/local/opt/egcs/info:$INFOPATH
One can also use the $local->automatic() function to search for
PATH, LD_LIBRARY_PATH, INFOPATH and MANPATH stuff automatically.
To install:
$ perl Makefile.PL
$ make
$ make test
$ make install
lib/ShellScript/Env.pm view on Meta::CPAN
my $output = '';
for (@{$self->{'order'}}) {
my $delimiter = ':';
# I hate how C Shell set every variable one way, and PATH another.
# It bugs me to no end.
if ($_ eq 'PATH') {
$delimiter = ' ';
$output .= "set path = (";
} else {
$output .= "setenv $_ ";
}
if ($self->{'utok'}->{$_}) {
if ($delimiter ne ':') {
$output .= "`utok -s '$delimiter' ";
} else {
$output .= '`utok ';
}
}
t/generate.t view on Meta::CPAN
&check($test->sh(), <<'EXPECT'
MAIL=/var/spool/mail/$USER
PAGER=less
export MAIL PAGER
EXPECT
);
################
# Test 2, check if set works in C Shell
&check($test->csh(), <<'EXPECT'
setenv MAIL /var/spool/mail/$USER
setenv PAGER less
EXPECT
);
# Add path
$test->set_path('PATH', 'bin', '$PATH');
################
# Test 3, lets put in something with a path in C Shell
&check($test->csh(), <<'EXPECT'
setenv MAIL /var/spool/mail/$USER
setenv PAGER less
set path = (/usr/local/bin $path)
EXPECT
);
################
# Test 4, same with Bourne Shell
&check($test->sh(), <<'EXPECT'
MAIL=/var/spool/mail/$USER
PAGER=less
PATH=/usr/local/bin:$PATH
t/generate.t view on Meta::CPAN
MAIL=/var/spool/mail/$USER
PAGER=less
PATH=`utok /usr/local/bin:$PATH`
export MAIL PAGER PATH
EXPECT
);
################
# Test 6, and C Shell
&check($test->csh(), <<'EXPECT'
setenv MAIL /var/spool/mail/$USER
setenv PAGER less
set path = (`utok -s ' ' /usr/local/bin $path`)
EXPECT
);
##################
# Little auxiliary function to save me typing.
sub check {
my $got = shift;
( run in 0.264 second using v1.01-cache-2.11-cpan-283623ac599 )