首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据先前命令的结果更改PS1和PS2?

根据先前命令的结果更改PS1和PS2?
EN

Stack Overflow用户
提问于 2015-11-02 15:50:12
回答 1查看 79关注 0票数 0

我正在维护一些shell脚本,其中一个(bash_profile.sh)已经定义了以下函数。

我不明白这个函数的目的是什么。

代码语言:javascript
复制
alias scpresume = "rsync --partial --progress --rsh=ssh

function exitstatus {
    EXITSTATUS="$?"
    BOLD="\[\033[1m\]"
    RED="\[\033[1;31m\]"
    GREEN="\[\e[32;1m\]"
    BLUE="\[\e[34;1m\]"
    OFF="\[\033[m\]"

    PROMPT="${GREEN}\u@\h:${BLUE}\w${OFF}\n$"

    if [ "${EXITSTATUS}" -eq 0 ]
    then
       PS1="${PROMPT}${BOLD}${GREEN}>${OFF} "
    else
       PS1="${PROMPT}${BOLD}${RED}>${OFF} "
    fi

    PS2="${BOLD}>${OFF} "
}

PROMPT_COMMAND=exitstatus
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-02 15:57:16

如果前面的命令成功(退出状态0),则提示符将显示绿色>,否则,>将为红色。

我在bash中使用PROMPT_COMMAND来表示类似的行为(也显示了退出状态):

代码语言:javascript
复制
PROMPT_COMMAND='_e=$?; if (($_e)) ; then echo -e "\e[31;1m[$_e]\e[m" ; fi'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33481569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档