別のスクリプト(rvm)をインポートするスクリプト(tmuxinatorで)を実行しています。 rvm は sh からのソーシングを明示的に許可しません。 tmuxinatorスクリプトのshebangが次のようなので、これが問題になるとは思いません。
#!/bin/bash
しかし、スクリプトからrvmを取得するためにrvm担当者が提案したコードを挿入すると、
if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then
source "$HOME/.rvm/scripts/rvm"
fi
-わかりました。
sh: 6: [[: not found
なぜshを通訳者として使うのですか?私も #!/usr/bin/zsh (スクリプトを呼び出すインタラクティブシェルの $SHELL 値) と #!/usr/bin/env zsh を使用しましたが、同じ苦情が表示されます。 。
ベストアンサー1
RVMは/bin/shのコンテキストで実行されていますか?これがおそらくこのような困難を経験している理由でしょう。ソーススクリプトは親のインタプリタを継承します。望むより:http://ss64.com/bash/source.html
。 (ソースまたはドット演算子)
ファイル名パラメーターからコマンドを読み取り、実行します。現在のシェルコンテキスト。
(強調は私のもの)