2010-12-07 28 views
6

我正在爲一個新的工作場所開發一個新的服務器,並且正在嘗試重新使用我今年早些時候在Python中編寫的一個CGI腳本。我的CGI腳本從如何找到Python在Unix上的位置?

#!/local/usr/bin/python 

但是,當我在新的服務器上運行它,它抱怨說沒有這樣的文件夾。顯然,Python在這個盒子上保存着不同的地方,但我不知道在哪裏。

我以前沒有做過太多的UNIX,就足以讓身邊,所以如果有一些巧妙的技巧,我應該在這裏知道我會感激:)

謝謝!

+2

您可能想要在unix.stackexchange.com上提出這些問題。在這裏完全可以接受,但unix是這些特定的不是非常程序設計相關問題的好地方 – Falmarri 2010-12-07 04:40:06

+0

謝謝大家! – Adam 2010-12-07 04:59:45

回答

6

出於這個原因,它建議你改變你的家當線更加路徑無關:

#!/usr/bin/env python 

有關更多信息,請參見this mailing list message

考慮possiblities,在不同的機器,在這些情況下,python可能安裝在/usr/bin/python/bin/python#!/usr/local/bin/python將會失敗。 對於這些情況,我們可以用參數調用env可執行文件,該參數將通過在$PATH中搜索並正確使用它來確定參數路徑。

env幾乎都設在/usr/bin/所以人們不必擔心env根本不存在/usr/bin。)

2
# which python 
/usr/local/bin/python 

更新

我誤讀。在終端

which python 

:與

#!/usr/bin/env python

此更換您的標題將蟒蛇位置拉從運行腳本的環境設置

12

嘗試用戶。

+0

這不是一個更簡單,更準確的答案? – 2017-08-29 15:35:43

2

嘗試:which pythonwhereis python

1

解決這個問題的正確方法是用

#!/usr/bin/env python 

它允許在認領的路徑中使用二進制的。

0

它是用於頭Python腳本反引號是一個好主意:

`which python`