- ベストアンサー
シェバング行 envの意味
perlとは直接関係ありませんが、シェバング行の意味が知りたいです。 #!/usr/bin/env ruby envの無い次のものはrubyを実行するという意味でわかりますが、 上のenvをつける理由が知りたいです。以下では駄目なのでしょうか? #!/usr/bin/ruby
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
>上のenvをつける理由が知りたいです。以下では駄目なのでしょうか? >#!/usr/bin/ruby env を使うのは、rubyのようなインタプリタをおかれている場所が統一されていない場合に、 env に探させて起動するということで、スクリプトを書き換えないでも 多くの場所でそのまま使えるようにするという目的です。 #env自体も /usr/bin なのか /bin なのかという話もありますが。 ですので、 /usr/bin に rubyがあるのなら、 #!/usr/bin/ruby にして問題ありません。 envを使うことで別の問題が出たりするんで、嫌う人もいます。