シバン#!/usr/bin/env pythonを使用する場合 スクリプトを実行するために、システムはどのpythonをどのように認識しますか 使用しますか? pythonを探す場合 環境変数のビンパス何も見つかりません。
env | grep -i python
承認された回答:
シバンはインタプリタへのフルパスを使用することを想定しているため、次の構文は正しくありません。
#!python
このようにフルパスを設定すると、うまくいく可能性があります:
#!/usr/local/bin/python
ただし、Pythonが/binにインストールされている可能性があるため、移植性はありません。 、/opt/python/bin 、または他の場所。
envを使用する
#!/usr/bin/env python
pythonと同等のフルパスをOSに移植可能な方法で指定できるようにするメソッドです。 最初にPATHにあります 。