本文へスキップ

シェバンとは?

しぇばん

シェバンとは、スクリプトファイルの先頭行に書く「#!」で始まる記述で、そのファイルをどのインタプリタで実行するかをOSに伝える仕組みです。

シェバン(shebang)とは、UnixやLinuxなどのスクリプトファイルの最初の行に記述する特殊コメント行で、「#!(シャープ+エクスクラメーション)」の2文字で始まることからこの名が付きました。「シャバン」「ハッシュバン」とも呼ばれます。

シェバンの後にはインタプリタの絶対パスを記述します。例えば「#!/bin/bash」と書かれたファイルをターミナルで直接実行すると、OSはそのファイルを/bin/bashに渡して処理させます。この仕組みにより、ユーザーはどの言語で書かれたスクリプトかを意識せずに、ファイルを直接実行できます。

代表的なシェバンの例を以下に示します。

  • #!/bin/bash:Bashシェルスクリプト
  • #!/usr/bin/env python3:Python3スクリプト(環境依存を避ける書き方)
  • #!/usr/bin/env node:Node.jsスクリプト
  • #!/usr/bin/perl:Perlスクリプト

「/usr/bin/env」を介してインタプリタを指定する方法は、インタプリタのパスが環境によって異なる場合に対応しやすいため広く使われます。シェバンはOS(カーネル)が直接解釈する機能であり、Windowsではネイティブには対応していませんが、WSLやGit Bashなどの環境では動作します。スクリプトをファイルとして配布・共有する際に実行環境を明示できる点で、開発の利便性と移植性の向上に貢献しています。

使い方・例文

Pythonスクリプトの1行目に「#!/usr/bin/env python3」と記述してファイルに実行権限を付与すると、「python3 script.py」ではなく「./script.py」のように直接実行できるようになります。

この用語をシェア

𝕏 でポスト LINE

最終更新:

関連用語