Linux端末でPythonスクリプトを実行する

Linux端末でPythonスクリプトを実行する

pyAES.pyというスクリプトをダウンロードし、Linuxデスクトップディレクトリのcodeというフォルダに配置しました。

この例によると、 http://brandon.sternefamily.net/2007/06/aes-tutorial-python-implementation/

私がこれを入力しながら、

./pyAES.py -e testfile.txt -o testfile_encrypted.txt

pyAES.pyファイルを実行する必要があります。しかし、このエラーが発生しました。

pi@raspberrypi ~/Desktop/Codes $ pyAES.py
-bash: pyAES.py: command not found

コマンドの出力はls -l次のとおりです。

pi@raspberrypi ~/Desktop/Codes $ ls -l
total 16
-rw-r--r-- 1 pi pi 14536 Oct  8 10:44 pyAES.py

以降の出力ですchmod +x

pi@raspberrypi ~/Desktop/Codes $ chmod +x pyAES.py                              pi@raspberrypi ~/Desktop/Codes $
pi@raspberrypi ~/Desktop/Codes $ pyAES.py
-bash: pyAES.py: command not found
pi@raspberrypi ~/Desktop/Codes $

コマンドを実行すると、chmod +x pyAES.py && ./pyAES.py次のエラーが発生します。

-bash: ./pyAES.py: /usr/bin/python2: bad interpreter: No such file or directory

/usr/binまた、ファイルをディレクトリに移動して実行してみました。

pi@raspberrypi /usr/bin $ pyAES.py
-bash: /usr/bin/pyAES.py: /usr/bin/python2: bad interpreter: No such file or directory
pi@raspberrypi /usr/bin $

ファイルが/usr/binディレクトリに存在することがわかりますが、まだ「ファイルまたはディレクトリがありません」というエラーが表示されます。

Linux端末がPythonスクリプトを実行しない理由を知りたいです。

ベストアンサー1

あなたのShebangラインが正しく書かれていないようです。次のエラーが発生します。

-bash: /usr/bin/pyAES.py: /usr/bin/python2: bad interpreter: No such file or directory

/usr/bin/pyAES.py最初の行を次に設定する必要があると言いたいです。

#!/correct/path/to/python

/correct/path/to/python次の出力で見つけることができます。

type -P python

私のシステムには/usr/bin/pythonありません。/usr/bin/python2

おすすめ記事