- 追加された行はこの色です。
- 削除された行はこの色です。
*shebang(しばん) [#w0dc1768]
Unix系OSでスクリプトの1行目に書くヤツ。
#!/usr/local/bin/perl
''#!''から始まる行のことを''shebang line''という。
''#!''以降のパスでプログラムを実行、オプションも指定できる。その以降の行をそのプログラムの標準入力に入れる。
Unix系OSの場合。実行許可されたファイルを実行した場合、elfその他の実行形式の場合、その[[binfmt]]で実行する。
''shebang line''を見つけた場合。上記のような振る舞いをする(binfmt_script等々)。
Windows環境においてはただのおまじないになってしまう。(cygwinで変わる?詳しい人よろ)
**例 [#xbf94cde]
#!/usr/local/bin/perl
#!/usr/bin/perl
環境によって異なるため、envがある環境では以下のようにもできる。
#!/usr/bin/env perl
最近のOSはパッケージ管理が付いているので、多くの場合スクリプト言語のプログラム(ruby, perl, python)は''/usr/bin''にある。
手動インストールした場合は、''configure''で指定しなかった場合''/usr/local/bin''になることが多い。
sh, sedなどは''/bin''にあることがおおい。
#!/bin/sh
#!/bin/sed
プログラムのパスが分からないときは、''which''コマンドを使うとよい。
$ which perl
/usr/bin/perl