[LRUG] Last exit status in bash prompt
Andrew Stewart
boss at airbladesoftware.com
Mon Jan 9 06:20:16 PST 2012
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
More information about the Chat
mailing list