#的首选方式!在shell脚本中

时间:2009-02-05 12:02:07

标签: shell

我搜索谷歌但无法找到这个相当简单的问题的答案。我有一个在第一行有hash-bang(#!)的python脚本:

#!/usr/bin/python

但是,如果在/ bin / python或/ usr / local / bin / python或其他地方使用python的计算机上运行该怎么办?必须有一种更好的方法来为shell脚本设置解释器。应该可以通过$ PATH设置它,因为如果它安装在系统上,它将知道在哪里找到python。

3 个答案:

答案 0 :(得分:12)

使用环境

#!/usr/bin/env python

它不是防弹的,但它涵盖了比/ usr / bin / python更多的情况。

答案 1 :(得分:4)

使用

#!/usr/bin/env python

env实际上始终位于/usr/bin,并将执行PATH中的任何计划。

答案 2 :(得分:3)

有些人更喜欢从以下开始:

#!/usr/bin/env python

不确定这是一个巨大的改进,因为你现在假设python在路径中并且它是正确的版本,但它是一个选项。