ひゃまだのblog

ひゃまだ(id:hymd3a)の趣味のブログ

シェルスクリプトの先頭行にshebang(#!)を書く

(2023-08-21 初稿 - 2023-08-22 追記)

bash等のスクリプトをファイルに記述する場合は、先頭行にshebang(シバン)を記述する。shebangスクリプトを実行する処理系(インタプリタ)を指定することになる。

bashでは、以下のように記述することが多い。

$ which bash
/usr/bin/bash

筆者のDebianでは、上記のとおりなので、以下のように記述する。

#!/usr/bin/bash

他のディストリビューション等で実行する可能性があるスクリプトの場合は、envを用いることにより、$PATHを走査してbashの在処を探って実行してくれるので、以下のように記述すると、より汎用性が高いスクリプトとなる。

$ which env
/usr/bin/env bash

ということで、筆者は以下のように記述することにしている(全部はそうなってないけど…(^^ゞ)。

#!/usr/bin/env bash

以下のサイトでは、shebangにいろいろな記述をして実験しており、大変参考になった。ぜひ、覗いてみてね。

関連ページ