Shebang 脚本不起作用

Shebang for scripts not working

我在我的 Django 生产环境中使用 PythonAnyhwere。我有一个脚本,应该 运行 按计划进行。

因为我在 virtualenv 中安装了 django,所以脚本开始时是这样的

#!/usr/bin/env python
activate_this = '/home/myname/.virtualenvs/myenv/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

我得到的错误是

/usr/bin/env python: no such Python interpreter

没问题。所以我改成了

#!/usr/bin/env python2.7

然后我得到了

/usr/bin/env python2.7: no such Python interpreter

/usr/bin/env python3.4: no such Python interpreter

我说好吧,如果我根本没有 shebang 线怎么办? 日志中的错误:

line 1: activate_this: command not found
line 2: syntax error near unexpected token `activate_this,'
line 2: `execfile(activate_this, dict(__file__=activate_this))'

那有什么办法呢?

您可以通过输入

知道您的 Python 口译员在哪里
$ which python

你也试试这样的方法(或者可能没有 env):

$ env python
Python 3.5.0 (default, Sep 20 2015, 11:28:25) 
[GCC 5.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.path
<module 'posixpath' from '/usr/lib/python3.5/posixpath.py'>

然后将lib改为bin并省略/posixpath.py部分