[LRUG] Last exit status in bash prompt
Viktor Tron
viktor.tron at gmail.com
Mon Jan 9 06:36:49 PST 2012
i guess you simply need something like this. hth
function exitstatusprompt {
EXITSTATUS="$?"
#PROMPT=$(rbenv version-name)
if [ "${EXITSTATUS}" -eq 0 ]
then
PS1="${PROMPT} ${GREEN}"
else
PS1="${PROMPT} ${RED}"
fi
}
PROMPT_COMMAND=exitstatusprompt
On Mon, 09 Jan 2012 14:20:16 -0000, Andrew Stewart
<boss at airbladesoftware.com> wrote:
> Hola El Rug,
>
> I'm having trouble incorporating the exit status of the last command
> into my bash prompt. My prompt executes a couple of commands to display
> the current Ruby version and the current git status, and then I want to
> use the exit status of the last command to control the colour of the
> final character (e.g. $).
>
> However the prior commands (for the Ruby and git info) make the
> last-exit-status test useless so I need to save out the value at the
> start of the prompt. However I cannot seem to make it work.
>
> For example, this shows the correct exit status:
>
> PS1="\$? \$(rbenv version-name) $ "
>
> But I want to make use of the exit status at the end of the prompt,
> along these lines:
>
> PS1="XXX \$(rbenv version-name) \$( if [ YYY -eq 0 ]; then echo
> $GREEN; else echo $RED; fi ) $ "
>
> where:
> - XXX means save $?
> - YYY means retrieve what XXX saved
> - GREEN and RED are variables defined earlier in my bashrc with Bash's
> wacky colour codes.
>
> I'm sure there's a simple answer but I can't find it!
>
> Thanks in advance,
>
> Andy Stewart
> -----
> http://airbladesoftware.com
> _______________________________________________
> Chat mailing list
> Chat at lists.lrug.org
> http://lists.lrug.org/listinfo.cgi/chat-lrug.org
More information about the Chat
mailing list