![如何在 .bashrc 中取消源项目而不添加注释?](https://linux22.com/image/1018687/%E5%A6%82%E4%BD%95%E5%9C%A8%20.bashrc%20%E4%B8%AD%E5%8F%96%E6%B6%88%E6%BA%90%E9%A1%B9%E7%9B%AE%E8%80%8C%E4%B8%8D%E6%B7%BB%E5%8A%A0%E6%B3%A8%E9%87%8A%EF%BC%9F.png)
如何在不注释的情况下取消 .bashrc 中的源项的源?我想让源项在 .bashrc 文件中不起作用。具体项是 .bashrc 中的“source ~/miniconda3/bin/activate”。我不想注释它,因为这很不方便。所以我想有没有什么办法可以做到这一点?
答案1
不,通常不能“撤消”已“来源”的内容,因为它会直接更改当前环境。唯一可以“撤消”更改的方法是,以某种方式存储旧环境,以便将其恢复为原始值。
例如,如果某个文件的foo.env
来源是 ( source foo.env
),并且它更改PATH
为包含$HOME/mystuff/bin/
,那么撤消这些更改的唯一方法是记住foo.env
最初的内容PATH
,例如,通过设置类似 的内容OLD_PATH=$PATH
,然后运行某些操作将所有内容设置回其原始值。(请注意,这并不总是可靠的,并且在来源之后所做的任何更改都foo.env
将丢失。)
就 anaconda (miniconda) 而言,这是您在 中引用的命令.bashrc
,确实有这样一个程序。它通过运行deactivate
或之类的命令来调用conda deactivate
,这应该会“撤消” 导致的环境更改~/miniconda3/bin/activate
。