2012-01-20

Bash 時間戳記 with $PS1

大約兩年前,凍仁從 KaLUG 的前輩口中得知 bash 的 $PS1 除了可以自訂顏色以外還可以加入時間,就有如即時通訊軟體的時間戳記一般,兩年後的現在凍仁終於掌握到訣竅了
[ jonny@oneiric ~ ] - 01:21
$ echo $PS1 [Enter]
\[\033[0m\][ \[\033[1;33m\]\u\[\033[1;31m\]@\h\[\033[1;31m\] \[\033[1;35m\]\w\[\033[1;35m\]\[\033[0m\] ] - \A\n\[\033[1;37m\]$ \[\033[0m\]

這不是什麼新聞了,連好男人(man page)都有說明,凍仁偏愛二十四小時的 \A
jonny@oneiric:~$ man bash [Enter]

  \t     the current time in 24-hour HH:MM:SS format
  \T     the current time in 12-hour HH:MM:SS format
  \@     the current time in 12-hour am/pm format
  \A     the current time in 24-hour HH:MM format

跟 Ubuntu 預設的樣式比比看就知道改了不少東西。
jonny@oneiric:~$ echo $PS1 [Enter]
\u@\h:\w\$

註:Windows 上的 Cygwin bash 則得把 \A 改成 $(date +%R) 才行。

站內連結:
多彩的 Bash 提示字元($PS1) on Debian 5

相關連結:
Bash prompt basics @ 尼卡.Nica :: PIXNET ::

資料來源:
How to: Change / Setup bash custom prompt (PS1)