![如何在 linux/mac 上将同一个程序映射到不同的二进制文件?](https://linux22.com/image/170787/%E5%A6%82%E4%BD%95%E5%9C%A8%20linux%2Fmac%20%E4%B8%8A%E5%B0%86%E5%90%8C%E4%B8%80%E4%B8%AA%E7%A8%8B%E5%BA%8F%E6%98%A0%E5%B0%84%E5%88%B0%E4%B8%8D%E5%90%8C%E7%9A%84%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%EF%BC%9F.png)
假设which R
返回/opt/anaconda3/bin/R
,并假设我R
在其他位置有其他二进制文件,并且我希望在输入 时运行不同的 R 二进制文件R
。
我怎样才能做到这一点没有
- 删除任何 R 二进制文件
- 移动任何文件
要检查它是否有效,R
应该运行/some/other/location/R
(并且which R
会返回/some/other/location/R
)
答案1
你有几个选择。
- 更改
PATH
变量,使其以不同的顺序搜索目录。这将影响该目录中的所有程序。 - 在 Debian 上,使用 Debian 替代品(Debian 及其衍生品)。而且只是有时有用。
- 设置一个
/opt/bin-override
目录,将其添加到 的头部PATH
,然后添加要运行的命令的符号链接。 ~/.bash_aliases
为您的或/etc/bash.bashrc
例如添加别名alias R="/some/other/location/R"