GNU/Linux >> Linux の 問題 >  >> Linux

Ubuntu Python シバン行が機能しない

コマンドを

として実行しようとしている場合
$ test.py

エラーはシバンとは何の関係もないかもしれません。むしろ、test.py が存在するディレクトリは PATH にはありません .試す

$ ./test.py

PATH をバイパスする

(これは、スクリプト自体が実行可能であることの確認に加えて行われます。)


python docs ページには次のように書かれています:

<ブロック引用>

Unix で Python スクリプトを簡単に使用するには、それらを実行可能にする必要があります。と

$ chmod +x スクリプトを作成し、適切な Shebang 行をスクリプトの先頭に置きます。通常、適切な選択は

#!/usr/bin/env pythonこれは、PATH 全体で Python インタープリターを検索します。ただし、一部の Unice には env コマンドがない場合があるため、インタープリター パスとして /usr/bin/python をハードコードする必要がある場合があります。

これがあなたに当てはまるかどうかはわかりません。


ドットを前に付けてスクリプトを実行するか、スクリプトを実行可能にする以外に、別の問題がある可能性があります:

Windows エディターで作成されたスクリプトを使用しようとすると、Windows の行末が含まれている可能性があります。これらを削除すると、シバンが再び機能するようになります。

このような行末を削除するには、たとえば Windows の行末を Unix の行末 (CR/LF から LF) に変換する方法を参照してください。

私の他の回答で失敗したシバン評価に関する私の一般的な発言も参照してください。


Linux
  1. Bash Echoコマンドライン自体で実行されるコマンドライン(スクリプトではない)?

  2. BluetoothがUbuntu13.10で動作しませんか?

  3. UbuntuとDebianでタブ補完が機能しない問題を修正する方法

  1. Pythonスクリプトを使用してシェルの作業ディレクトリを変更する

  2. ターミナル(ubuntu)でPythonスクリプトを実行するには?

  3. &を使用してバックグラウンドで実行すると、Python スクリプトの Nohup が機能しない

  1. Grubレスキューコマンド。 Ubuntu 13でGrubが機能しませんか?

  2. BluetoothがUbuntu20Rapsberry Piで機能しませんか?

  3. シバンまたはシバンではない