別のディレクトリにget/installを自動的に実行するbashスクリプトを作成しようとしています。関連する部分はここにある:BashスクリプトはGoコマンドを実行できません
(cd ../web ; go get)
(cd ../web ; go install)
(cd ../services ; go get)
(cd ../services ; go install)
私は、スクリプトを実行すると、私はこのかかわらを得る:行43:
- のCD ../web
- は
./staging.shを取りに行きます:go:コマンドが見つかりません - cd ../web
- go install
./staging.sh:行44:行く:行45::行く:コマンド - 見つからないCDが
- を../services
./staging.shを取りに行くコマンドは - CDが見つかりません。行46:行く:./services
- は
./staging.shをインストール行くコマンドは
ディレクトリに手動で移動してコマンドを実行するだけで正常に動作します。なぜ彼らはスクリプトから実行しているときに実行されていないのですか?
$ PATHに 'go'ですか? – jedifans
パスの問題のように聞こえます。 'printenv | grep PATH'をあなたのスクリプトに追加し、 'go'バイナリがリストされているフォルダの一つに入っていることを確認してください。 goをインストールしたばかりの場合は、新しい端末を起動してください – pnovotnak
パスは、 'PATH =/usr/local/sbin:/ usr/local/bin:/ usr/sbin:/ usr/bin:/ sbin:/ bin ' ファイルに行くときにパスをgrepするのと違うのはどちらですか?だからおそらく、パスの問題です。スクリプトを正しいパスにするにはどうすればよいですか? – Graham