GREEN="\e[1;32m"
RED="\e[1;31m"
NONE="\e[m"
get_exit_status(){
es=$?
if [ $es -eq 0 ]
then
echo -e "${GREEN}${es}${NONE}"
else
echo -e "${RED}${es}${NONE}"
fi
}
get_path(){
#dummy function
echo "PATH"
}
PROMPT_COMMAND='exitStatus=$(get_exit_status)'
Run Code Online (Sandbox Code Playgroud)
下面给出了正确的 exitStatus 但颜色变量没有扩展:
PS1='${RED}\h $(get_path) ${exitStatus}${NONE} '
Run Code Online (Sandbox Code Playgroud)
但是,下面的一个给了我颜色,但退出状态没有更新:
PS1="${RED}\h $(get_path) ${exitStatus}${NONE} "
Run Code Online (Sandbox Code Playgroud)
这样做的正确方法是什么?我该如何解决这个问题,以便 exitStatus 和颜色都能正常工作?