在我的.cshrc中,LD_LIBRARY_PATH原来是这样的:
setenv LD_LIBRARY_PATH path_one:$LD_LIBRARY_PATH
我编辑 .cshrc 以将 path_one
替换为 path_two
。我的文件现在看起来像这样:
setenv LD_LIBRARY_PATH path_two:$LD_LIBRARY_PATH
但是在重新加载文件 (source ~/.cshrc
) 之后,我在 LD_LIBRARY_PATH 中得到了 path_one
和 path_two
:
% echo $LD_LIBRARY_PATH
path_two:path_one
我不想在路径中包含 path_one
。谁能告诉我无需注销/重新登录即可更新 .cshrc 文件的有效方法?
最佳答案
当您获取文件时,该分配行正在运行。它将该静态值添加到 $LD_LIBRARY_PATH
变量的当前值之前。
连续三次获取该文件,您将三次将该路径添加到前面。
没有可以恢复到的“默认”值(除非您自己保存一个并小心使用)。简而言之,您可以注销并重新登录,或者手动将当前值编辑为您想要的值(通过手动使用正在运行的 shell echo "$LD_LIBRARY_PATH"中的
以获取当前值并从中复制和粘贴等)。setenv
也就是说,在 $LD_LIBRARY_PATH
中添加一个不存在的额外路径并没有任何真正的危害。它只需要在应用程序启动期间进行一次打开尝试(但这应该相当快)。
如果该路径确实存在并且包含您不想使用的库,那当然是另一回事了。
关于linux - 采购 .cshrc 后重复的环境路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27384579/