2013-09-30 122 views
3

我有一個腳本,我正在嘗試設置shebang,以便我執行 ./script.py而不是python script.py。這適用於我的腳本用python路徑設置python腳本shebang

#!/usr/bin/env python最頂端的行。這將使用env.

,當我試圖做改變這種情況, #/usr/local/lib/python2.7,我得到這個錯誤信息

/usr/local/lib/python2.7: bad interpreter: Permission denied 

,當我檢查我的Python版本,它是

>>> import sys 
>>> sys.version 
'2.7.3 (default, Jun 21 2013, 13:45:37) \n[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]' 
>>> 

和sys.path中給出/usr/local/lib/python2.7/*。雖然我沒有看到任何具體的python2.7.3

你能指導我如何設置使用pythonpath而不是env。

感謝

回答

5

shebang行應該包含實際的python解釋器可執行文件,而不僅僅是python安裝的路徑。大概可以找到你正在尋找與which python

+0

that worked!,但是pythonpath和python解釋器exectuable之間有區別嗎? –

+0

是的。 [PYTHONPATH](http://docs.python.org/2/using/cmdline.html#envvar-PYTHONPATH)用於附加到模塊的搜索路徑。 –

2

which python在命令行上應該給你的路徑,你需要的家當線。