私はrubyからコマンドsystem
(またはバッククックを使用して)を実行しようとしていますが、問題が発生しています。私がコマンドを呼び出そうとすると、シェルはそれを見つけることができません。たとえそれを真っ直ぐにしても、それが動作することは分かります。たとえば:ルビシステムコールに使用するシェルを指定するにはどうすればよいですか?
`zip`
>> sh: zip: command not found
問題はルビーではなくbash
より、$PATH
が正しく設定されていないsh
シェルを使用している、と私はなぜわからないということのようです。私のアプリケーションが実行されているユーザーは、デフォルトでbash
を使用するように設定されています。
bash
の代わりにsh
を使用するようにルビーに指示する方法はありますか?
ああ、できます。なぜなら、私はそれが複数の開発環境で開発されており、そのパスがすべて同じであるとは限らないからです。 –
whereisのようなコマンドは、常にパスになければなりません。/usr/bin/whereisこれは、散らばっている可能性のあるビンを見つけるための良い解決策であるかもしれません。 –