2
任意のシェルで実行されるシェルスクリプトの作成(複数のシバン行を使用しますか?)
私はシェルスクリプトの詳細を調べ始めたばかりで、常にスクリプトをファイルにスローし、マークを付けてchmod +x完了/path/to/script.shし、デフォルトのインタープリターをそのまま使用できるようにしました。シェルに使用しました。どうやら/bin/sh、zshプロンプトからスクリプトを実行した場合でも、スクリプトにzsh固有のものを入れ始め、実行しないと失敗するため、デフォルトであるようですzsh /path/to/script.sh。 ポイントを得るために、ここに私の質問があります: #!/path/to/shell先頭にシェバン行()がない場合、どのシェルがスクリプトを実行しますか?推測します/bin/shが、確認できません。 任意のプラットフォームで実行されるシェルスクリプトの記述に関して、「ベストプラクティス」と見なされるものは何ですか?(OK、これは一種の無制限の) zshを使用しようとし、zshが利用できない場合はbashにフォールバックするスクリプトを書くことは可能ですか?以下のように2つのシバン行を入れてbad interpreter: /bin/zsh: no such file or directoryみましたが、zshのないマシンで試してみるとエラーが出ます。 #!/bin/zsh #!/bin/bash