如何更改程序路径/别名?

如何更改程序路径/别名?

我不确定它在 Linux 上是如何工作的,但是你可以在任何目录中输入程序名称,如lsman等,然后程序就会执行。

我卸载了旧版本的 ImageMagick 并构建了新版本,现在当我尝试执行命令convert(运行 ImageMagick)时出现以下错误:

/usr/bin/convert: No such file or directory

于是我跑了:

find / -name convert

这表明:

/usr/local/bin/convert

因此看起来,由于某种原因,ImageMagick 这次将实际的可执行文件放在了不同的目录中,但是当我尝试运行该程序时,它会在旧目录中查找。

如何convert使用新路径更新路径/别名/快捷方式(术语失败)?

答案1

您应该确保您的/usr/local/bin/目录位于$PATH

echo $PATH

这将返回 Bash 搜索可执行文件的所有目录,以冒号 (:)。输出应类似于以下内容:

/usr/local/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/texbin

Bash shell 使用'哈希表'记住可执行文件的完整路径名。有关详细信息,请参阅man bash并搜索'SHELL 内建命令'

在新安装程序后,此哈希表可能不会自动更新。要在当前终端中强制执行此更新,请使用以下命令:

hash -r

现在转换

应该返回

/usr/local/bin/convert

相关内容