export PS1=\u@\h:\w\$
I disagree with default bash prompt. Do you? It’s quote common to work with long paths:
ludovico@host:/u01/app/oracle/product/10.2.0/network/admin$ \ /nooo/this/command/line/is/really/long/and/offcourse -I \ -will -wrap -my -command -line
and, when working on multi-database environments I need to check my environment:
env | grep -i oracle #or echo $ORACLE_SID echo $ORACLE_HOME
I currently use this prompt, instead:
export PS1=$'\\n# [ $LOGNAME@\h:$PWD [\\t] [`ohvers` SID:${ORACLE_SID:-"no sid"}] ]\\n# ' # [ ludovico@caldara_2k:/u01/app/oracle/product/10.2.0/db_1/network/admin [23:15:58] [10.2.0 SID:orcl] ] #
What is `ohvers`?? I defined this function to get the version of oracle from my ORACLE_HOME variable:
ohvers () { echo -n $ORACLE_HOME | sed -n 's/.*\/\([[:digit:].]\+\)\/.*/\1/p' }
Pros:
- I have a blank line that separate my prompt from previous output
- I get the system clock (useful when saving my konsole history. Did I say konsole?)
- I can see my Oracle Environment before launching dangerous commands
- I have an empty line to start my endless commands
- I have a lot of sharps “#” : they are fine against wrong copy&paste operations…
Suggestions?