Mac OSX10.8.2で実行
SSH経由でperlスクリプトを実行しています。perlスクリプトでは、$ ENV {MY_VAR_NAME}を使用して環境変数を照会し、ローカルで実行すると正常に動作します。ただし、SSHを使用すると、すべての環境変数が設定解除されます。
私も走ってみました
system("source ~/.bash_profile");
私のスクリプトの冒頭では役に立たなかった。
任意のヒント?
編集:
私の質問を言い換えます。
私はマシンAとBを持っています。マシンBでperlを実行し、Bの環境変数を取得しようとしましたが、機能しました。次に、同じスクリプトを実行して、つまりこのコードを使用して、AからBにSSHで接続します。
ssh user@B perl myscript.pl
今回は、Bの環境変数はすべて空白です。
任意のヒント?
アップデート:
上記のスクリプトを実行すると、マシンBで〜/ .bashrcが呼び出されましたが、〜/ .bashrcで環境変数を設定した後、上記のコマンドを再度実行しても、環境変数が表示されません。
また、私のperlスクリプトにのみが含まれている場合
echo $ENV{PATH}
それから私は得る
/usr/bin:/bin:/usr/sbin:/sbin