我有一台安装了CentOS
该软件的远程机器hg
。它运行了很长时间,但今天当我尝试使用hg
命令时,出现了以下错误,
[dinesh@lab test]$ hg st
-bash: hg: command not found
[dinesh@lab test]$
然后我意识到它可能被遗漏了PATH
。(但是,怎么办?,不确定。)我检查了which hg
命令,但它没有给我路径。
hg
位于/usr/local/bin/hg
并使用 的完整路径hg
,使其工作。我尝试将hg
路径添加到PATH
变量,例如,
PATH=$PATH:/usr/local/bin/hg
这也不起作用。然后我为hg
命令创建了一个别名,
alias hg="/usr/local/bin/hg"
这至少让它发挥作用。
但最终,我还是遇到了同样的问题kdiff3
(直到昨天它都运行良好)。尝试了上述方法,只有别名才能使其工作。(再次)
现在,我需要使用hg kdiff3
命令,并且我一直在获取
/bin/sh: kdiff3: command not found
但是,我kdiff3
在存储库的文件中启用了扩展hgrc
。(直到昨天它仍在运行):(
[dinesh@lab test]$ cat .hg/hgrc
[paths]
default = ssh://[email protected]//repo/code
[ui]
username= dinesh <[email protected]>
[extensions]
mq =
fetch =
purge =
hgext.extdiff =
hgext.acl =
[extdiff]
cmd.kdiff3 =
[dinesh@lab test]$
笔记 :.profile
在对PATH
或文件进行更改后alias
,我每次都会查找这些更改,以使更改生效。
有人能建议我该怎么做才能解决这个问题吗?
答案1
$PATH
包含目录,而不是文件,因此应该列出/usr/local/bin
。
(想一想:现在它只是/bin:/usr/bin
,而不是/bin/ls:/bin/cp:/usr/bin/ssh
......)