我已经安装并运行virtuarenvwrapper.sh
以尝试在我的系统上配置 python 的替代版本。该脚本已在某处放置了一系列命令,现在每当我打开gnome-terminal
.现在,当我打开终端时,我看到:
bash: which: command not found...
bash: -m: command not found...
virtualenvwrapper.sh: There was a problem running the initialization hooks.
If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenv has been installed for
VIRTUALENVWRAPPER_PYTHON= and that PATH is
set properly.
user@localhost ~]$
我想删除这些命令,但我找不到它们在哪里。我看过:
~/.bash_profile
~/.bashrc
/etc/bashrc
这些命令在我的用户终端以及 root 的终端上运行。还有哪些地方可以在打开终端时输入要运行的命令?
答案1
每当我试图追踪这样的事情时,我都会使用一个小函数:
grep_bash(){
grep -H "$@" ~/.bashrc ~/.profile ~/.bash_profile ~/bash.login \
/etc/bash.bashrc /etc/profile /etc/environment /etc/profile.d/* \
/etc/pam.d/* 2>/dev/null
}
如果将其添加到您的文件中,~/.bashrc
您可以使用它来查找 bash 初始化文件中的任何字符串。
但请注意,这里最有可能的情况是您~/bashrc
或其他任何人正在采购另一个文件并且那是有问题的。因此,尝试查找单词source
或.
字符:
grep -wE '\.|source' ~/.bashrc ~/.profile ~/.bash_profile ~/bash.login \
/etc/bash.bashrc /etc/profile /etc/environment /etc/pam.d/*\
/etc/profile.d/* 2>/dev/null
答案2
罪魁祸首是一个符号链接/etc/profile.d/virtualenvwrapper.sh
解决方案是删除该符号链接,或者更好的是卸载该包:
yum remove python-virtualenvwrapper