1
PROMPT> which python
/usr/local/bin/python

PROMPT> ls -al
total 8
drwxr-xr-x   3 jon   102B Aug 27 20:15 ./
drwxrwxr-x  21 jon   714B Aug 27 20:15 ../
-rwxr-xr-x   1 jon    54B Aug 27 20:15 build*

PROMPT> cat build
#! /usr/local/bin/ python
print 'hello world - build'

PROMPT> ./build
-bash: ./build: /usr/local/bin/: bad interpreter: Permission denied

我究竟做错了什么?

4

3 回答 3

2

去掉里面的空格,#! /usr/local/bin/ python这样就可以了#!/usr/local/bin/python。您可能还想制作它#!/usr/bin/env python,它将选择您路径中的第一个 Python 解释器,但不建议将其用于已发布的模块。(虽然,两者都不是/usr/local/bin/python)。

于 2013-08-28T00:22:54.890 回答
2

你的 shebang 有太多的空间。尝试

#!/usr/local/bin/python

另一种常见的形式调用'env'来查找要使用的python,这样您就不会依赖于根据python的安装方式而往往不同的路径。

#!/usr/bin/env python
于 2013-08-28T00:23:55.523 回答
2

/bin/和之间有空格python

HTH,菲尔

于 2013-08-28T00:24:24.683 回答