非インタラクティブシェルに戻る前に、.bashrcの一番上にこれがあります
FOO="BAR"; export FOO
echo "HELLO WORLD"
# If not running interactively, don't do anything
[ -z "$PS1" ] && return
ホームディレクトリに次のスクリプト test.sh があります。
#!/bin/bash
echo "A"
echo $FOO
echo "B"
test.sh を実行します。出力:
A
B
2 つの質問:
- $FOO の値が表示されないのはなぜですか?
- 「HELLO WORLD」が表示されないのはなぜですか?
編集: #!/bin/bash を使用したスクリプトは、.bashrc を再度呼び出すサブシェルをトリガーすると思いましたが、それは間違っていますか?
編集:別のホストからスクリプトを呼び出しても、値は表示されません。それでも、.bashrcは実行されますか???
ssh remotehost "/home/username/test.sh"