1

次のスクリプト (として保存script.sh):

#!/bin/sh
cd $MY_PYTHON_WORKING_DIRECTORY
python script1.py
python script2.py

script.sh次に、 bash シェルでコマンドを実行しようとすると、エラーが発生しましbash: script.sh: command not foundた。これが期待どおりに機能しないのはなぜですか? スクリプトの最初の行が#!プレフィックスで始まる場合、その行の次のパスはコマンドとして解釈されますよね? 参考までに、最初の行を に変更しても#!/bin/bash、同じエラーが発生しました。sh script.shまたはとしてスクリプトを実行すると、bash script.shスクリプトは期待どおりに実行されました。

を押すだけでスクリプトを実行する方法はありますscript.shか?

shとの間のもう 1 つの質問ですがbash、どちらを使用すればよいですか? 私は OS X 10.8 を使用しており、デフォルトのシェルは現在 set ですbashが、今後はどれを使用するか迷っています。

ありがとう。

4

1 に答える 1

6

まず、スクリプトを実行可能にします。

chmod u+x script.sh

次に、現在のディレクトリが $PATH にありません。したがって、パスを指定してスクリプトを実行する必要があります (相対パスで十分です)。

./script.sh
于 2013-05-29T10:32:21.833 に答える