我有两个程序位于abc
不同的目录中(/dir1/
和/dir2/
)。每个目录都包含其他程序。通常,我希望dir1
在之前搜索命令dir2
。但是,在的情况下,我希望默认执行abc
中的版本。我该如何实现这一点?dir2
我尝试过alias
ing via,alias abc="/dir2/abc"
但是如果命令由另一个程序调用,则不起作用。如何让它成为每次有人尝试调用时的默认设置abc
?
答案1
这个问题已在另一个 stackexchange 网站上得到解答。以下是感兴趣的人可以参考的解决方案:
以下是对我有用的选项(引用自答案):
选项 1:在你的路径上创建一个覆盖文件夹
如果您需要以间接方式调用这些程序(例如,由窗口管理器启动的某些应用程序将调用 g++ 或 python),则应编辑路径。您只需在 ~/.bashrc 中的路径开头添加一个新文件夹即可:
export PATH=/home/username/.bin:$PATH 并放置两个符号链接指向适当的程序:
ln -s /usr/bin/python /home/username/.bin/python ln -s /usr/local/bin/g++ /home/username/.bin/g++ 这样,一旦您的 ~/.bashrc 被正确获取(注销,然后重新登录),一切都应该找到正确的 python 和正确的 g++。