Érzelgős parancsori prompt

kecsi küldte be p, 2009-08-14 13:35 időpontban

Commandlinefu-n találtam egy fópofa parancssori prompt beállítást. A prompt asszerint ha helyes utasítást adtál ki mosolyog (jó pofát vág) vagy ha hibás parancsot sikerült begépelned akkor furcsán vagy szomorúan néz rád. :D
Első eredeti verzió:
export PS1="\`if [ \$? = 0 ]; then echo \e[33\;40m\\\^\\\_\\\^\e[0m; else echo \e[36\;40m\\\-\e[0m\\\_\e[36\;40m\\\-\e[0m; fi\` \u \w:\h)"
egy kicsit módosított egy hozzászólásból
export PS1="\`if [ \$? = 0 ]; then echo \[\e[34m\]^_^\[\e[0m\]; else echo \[\e[31m\]O_O\[\e[0m\]; fi\`[\u@\h:\w]\\$ "

Nekem:
PS1='\[\033[01;32m\]\u@\h\[\033[01;33m\]:$(ret=$?; test $ret -eq 0 || echo "\[\033[01;34m\]$ret\[\033[01;33m\]:")\[\033[01;31m\]\w\[\033[01;33m\]\$\[\033[00m\] '

$() helyett ha tud vki jobbat, az jó lenne. A 0-s return code-ot nem akarom kiiratni. Kétszer nem használhatok $? -t és ${?:+} se jó. Úgyhogy kicsit lassítja a prompt-ot. (de még jó, h bult-in test-et és echo-t használ)

(errorlevel függvényecskét dos-os bat-okban "lehetett" használni, egyébként használhatatlan volt)