我最近修改了我的.bashrc
文件,以便有一个漂亮的PS1 shell 像这样:
┌──(0) [09:57] gianluca@ubuntu-[~]
└─$
问题是,在当前的配置下,无论我给予shell的输入命令是什么,返回状态((0)
)总是0,即使该命令返回错误消息。
完整的.bashrc
文件是here,而破坏该行为的相关行如下:
...
# Virtualenv settings to correct env position on the shell
PS1_START="┌──"
export VIRTUAL_ENV_DISABLE_PROMPT=1
VENV="\$(virtualenv_info)";
PS1="${VENV}${PS1}"
# Conda env settings to correct env position on the shell
CENV="\$(condaenv_info)";
PS1="${CENV}${PS1}"
PS1="${PS1_START}${PS1}"
...
其中我使用了.bash_functions
点文件中定义的这些函数:
function virtualenv_info(){
if [[ -n "$VIRTUAL_ENV" ]]; then
venv="${VIRTUAL_ENV##*/}"
[[ -n "$venv" ]] && echo "($venv) "
else
venv=""
fi
}
function condaenv_info(){
if [[ -n "$CONDA_DEFAULT_ENV" ]]; then
venv="${CONDA_DEFAULT_ENV##*/}"
[[ -n "$venv" ]] && echo "($venv) "
else
venv=""
fi
}
我需要添加这些行,以便在激活时将PS1中的环境名称保持在正确的位置,而不是PS1本身的开头。
你知道怎么帮我吗?谢谢。
1条答案
按热度按时间k97glaaz1#
好吧,我终于解决了替换这个:
用这个