hg:未找到命令

hg:未找到命令

我确信你们已经厌倦了“XX:未找到命令”之类的问题,所以我很抱歉又增加了一个问题,但还是请大家原谅。

我正在尝试创建一个已编译的 mercurial 和 python 安装的 tarball,以便可以将其发送给公司中的各个团队,他们随后会在各自的隔离的 unix 服务器(所有服务器都运行相同操作系统的相同版本)上提取它们,并使用 hg 运行,尽管他们的本机 python 版本太旧。

到目前为止,这实际上进展顺利,但有些机器给我带来了麻烦。提取 tar 包后,用户将获得一个新的 bin 文件夹,其中包含 hg 和 python 可执行文件。将 PATH 设置为该 bin 文件夹后,python 可执行文件可以正常工作,但 hg 可执行文件会产生“hg:未找到命令”错误。

这可能是一条糟糕的道路吗?

如果你调用

> hg

尽管

> which hg

产生 hg 可执行文件的正确路径

另外,如果你导航到该文件夹​​并调用

> ./hg

您仍然会收到“hg:未找到命令”。

让它工作的唯一方法是打电话

> ./python hg

它可以正常工作并显示 hg 的帮助信息。

这可能是权限问题吗?

我已提取文件,所有文件均归我所有。我还验证了 hg 文件,并且如您所期望的那样,我拥有执行权限。

为什么我会收到这个错误?

除了路径和权限之外,我不知道还有什么需要检查。如有任何建议,我将不胜感激。

谢谢!

答案1

脚本中的魔法行可能存在问题hg。请尝试:

$ less `which hg`

第一行应该是 Python 解释器的绝对路径。例如:

#!/usr/bin/python

(或者你的 Python 解释器所在的位置)。仔细检查此路径是否正确。

相关内容