Python shebang 执行权限被拒绝

Python shebang execution permission denied

我有一个名为 blah.py 的非常简单的脚本,如下所示:

#!/space/jazz/1/users/gwarner/anaconda/bin python
print 'here'

我的which pythonreturns/space/jazz/1/users/gwarner/anaconda/bin/pythonls -l blah.pyreturns-rwxrwxr-x 1 gwarner gwarner 64 Jul 13 14:16 blah.py。我的用户名是 gwarner。但是,当我尝试使用 ./blah.py 从它所在的目录执行此脚本时,我得到 ./blah.py: Permission denied。当我使用 python blah.py 执行它时它运行正确。怎么回事?

您正在尝试 运行 blah.py 作为可执行文件。为此,您可能需要 运行 在终端

sudo chmod +x blah.py

更改文件的权限并使其可执行。

确保 /space/jazz/1/users/gwarner/anaconda/bin 文件确实设置了可执行权限。

我认为您在 shebang 行中有一个额外的 space...试试这个:

#!/space/jazz/1/users/gwarner/anaconda/bin/python