如何找到 Python 在 Unix 上的位置?
我正在为新工作场所开发一台新服务器,并尝试重用今年早些时候用 Python 编写的 CGI 脚本。我的 CGI 脚本以
#!/local/usr/bin/python
但是当我在新服务器上运行它时,它抱怨没有这样的文件夹。显然,Python 保存在这个盒子上的不同位置,但我不知道在哪里。
我以前没有做过太多的unix,只是足以四处走动,所以如果有一些巧妙的技巧我应该知道这里我会很感激:)
谢谢!
I'm working on a new server for a new workplace, and I'm trying to reuse a CGI script I wrote in Python earlier this year. My CGI script starts off with
#!/local/usr/bin/python
But when I run this on the new server, it complains that there's no such folder. Obviously Python's kept in a different place on this box, but I've got no idea where.
I haven't done much unix before, just enough to get around, so if there's some neat trick I should know here I'd appreciate it :)
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
尝试:
在终端中。
Try:
in a terminal.
正是出于这个原因,建议您将 shebang 行更改为与路径无关:
请参阅 此邮件列表消息了解更多信息:
For this very reason it is recommend that you change your shebang line to be more path agnostic:
See this mailing list message for more information:
更新:
我读错了。将标头替换为
#!/usr/bin/env python
这将从运行脚本环境设置的用户处获取 python 位置
Update:
I misread. Replace your header with
#!/usr/bin/env python
This will pull in the python location from the user that runs the script's environmental settings
尝试:
which python
或whereis python
Try:
which python
orwhereis python
对 Python 头脚本使用反引号是个好主意:
It is a good idea to use backticks for header Python script:
解决此问题的正确方法是
允许在 shebang 的 PATH 中使用二进制文件。
The proper way to solve this problem is with
which allows for the use of a binary in the PATH in a shebang.