我错误地将 CDPATH 放入我的.profile
文件中,只是想看看它是否会稍微提高我的工作效率,但发现有时它会cd
进入我不想要的目录(我需要在它们前面加上以./
确保它进入当前目录而不是在共享相同名称的环境变量中定义的目录)。
我将其从.profile
文件中删除了,但每次启动终端时它仍然会被导出,而且我无论如何也找不到执行此操作的(bash)脚本。
我会/etc
在我的主目录中搜索任何名称类似于profile
或的文件,bash
并xargs grep
查看这些文件是否有类似的内容,export CDPATH
但无济于事。
这是否存储在使用的配置文件中cd
?有人遇到过类似的问题吗?
不用说,我确实投入了export CDPATH=''
我的.profile
,但我需要先获取它以使声明生效。
我的 bash 版本是 4.2.24,我的操作系统是 Linux Mint 13 Cinnamon。
答案1
您的.profile
将被阅读,当您登录不是在您启动新 shell 时。这包括当您登录到图形显示管理器时,我假设您正在这样做(“每次我发射终端”)。如果您使用的是图形界面,请完全退出并重新登录以获取全新的环境。
编辑:为了将来参考,我建议将类似的东西放在文件中,.bashrc
而不是.profile
。.bashrc
每次启动shell时都会读取。这一页很好地详细解释了差异。