ssh経由bashでコマンド実行するときの環境変数を有効にするには。 以下のようにして、リモートホストでコマンドを実行する場合、リモートでの環境変数が有効にならない事がある。 これはbashの仕様が原因で、解決にはsshdとリモートユーザの設定が必要。 おそらくshでも同じと思うが、ひとくちにshと言ってもいろんな変種があるので調べていない。 以下にまとめる。 なお、複数ホストを用意するのが面倒なので、本記事で実例を示す場合には接続先をlocalhostしている。 sshでコマンド実行すると環境変数が有効にならない。 試しに、user01のprofile、ここでは~user01/.profileでTESTENVという環境変数を設定する。 sudo su – して通常のログインを擬似してみると、意図した通りTESTENVが設定されている。 しかしsshでいきなりコマンド実行した場合(ここでは
![[FreeBSD][Linux] ssh経由でコマンド実行すると環境変数を読まないでござる | Nobwak's Lair](https://cdn-ak-scissors.b.st-hatena.com/image/square/7a06df8a1f59981ed52137111219c36325941b75/height=288;version=1;width=512/http%3A%2F%2Fapril.fool.jp%2Fblogs%2Fwp-content%2Fplugins%2Fall-in-one-seo-pack%2Fimages%2Fdefault-user-image.png)