Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

cannot modify LINUX env vars

by ISAI student (Scribe)
on Feb 06, 2011 at 09:28 UTC ( #886490=perlquestion: print w/replies, xml ) Need Help??
ISAI student has asked for the wisdom of the Perl Monks concerning the following question:

Hello all. I am trying to set LINUX environment variables via the %ENV and fail. The chanegs I do to the %ENV do not "stick" at all. I have tried even a simple perl -e and failed. See 1 line two commands LINUX output:
perl -e '$ENV{'pathy'}="kuku"; echo $pathy
I would have expected:
perl -e '$ENV{'pathy'}="kuku"; echo $pathy kuku

Replies are listed 'Best First'.
Re: cannot modify LINUX env vars
by eyepopslikeamosquito (Chancellor) on Feb 06, 2011 at 09:54 UTC
Re: cannot modify LINUX env vars
by Corion (Pope) on Feb 06, 2011 at 09:39 UTC

    That's not how the environment works. Changes are only visible to the current process and its children. You cannot change the "upwards" environment.

    The traditional technique is to output a shell script that the "upper" process then evaluates:

    # In the parent shell do: $(perl -wle 'print "export pathy=kuku') echo $pathy
Re: cannot modify LINUX env vars
by Khen1950fx (Canon) on Feb 06, 2011 at 18:15 UTC
    I tried setenv. I modified the source and used this:
    #!/usr/bin/perl use strict; use warnings; setter( $ENV{'pathy'} = 'kuku' ); system("env"); sub setter { shift; while ( my ( $key, $value ) = splice @_, 0, 2 ) { $ENV{$key} = $value; } return; }

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://886490]
Approved by Perlbotics
[TCLion]: Good Morning Monks, I am parsing logs and some date time formats are inconsistent. I am trying to make output all same format. What is the best way to convert a month(word) to month(number)?
[Corion]: TCLion: I'm not aware of a better way than manually building the hash, as all strptime incarnations I know have nasty edge cases
[davido]: And remember; time is hard. :) As soon as you think, I've got this, you'll discover that time is harder than that. :)

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (10)
As of 2017-03-23 14:40 GMT
Find Nodes?
    Voting Booth?
    Should Pluto Get Its Planethood Back?

    Results (287 votes). Check out past polls.