perl: Run remote perl script through SSH and query environment variables on remote machine
Posted
by
kakyo
on Stack Overflow
See other posts from Stack Overflow
or by kakyo
Published on 2012-10-09T22:31:45Z
Indexed on
2012/10/10
3:37 UTC
Read the original article
Hit count: 484
I'm running a perl script through SSH, in the perl script I query environment variables using $ENV{MY_VAR_NAME} and it works fine when run locally. But through SSH, all environment variables become unset.
I also tried to run
system("source ~/.bash_profile");
at the beginning of my script to no avail.
Any tips?
EDIT:
Rephrasing my question.
I have machine A and B. I ran my perl on machine B, trying to get the environment variables on B and it worked. Then I ssh from A to B running the same script, i.e., using this code
ssh user@B perl myscript.pl
This time the environment variables on B are all blank.
Any tips?
UPDATE:
I found that running the above script, ~/.bashrc on Machine B was invoked, but after setting environment variables in ~/.bashrc, run the above command again and still I don't see any environment variables.
Also, if my perl script contains only
echo $ENV{PATH}
Then I get
/usr/bin:/bin:/usr/sbin:/sbin
© Stack Overflow or respective owner