Thursday, August 3, 2006

Warna Login

Mengingat masa lalu waktu pertama kali kuliah di Fasilkom. Fasilkomers sering bermain shell dan warna2 biar shell gak membosankan. Kebetulan juga saya ingin melakukan ssh ke suatu system. Tapi karena gak menarik saya lihat2 lagi deh tutorial pewarnaan shell untuk login, aja :) Ini hasil sadurannya dari berbagai sumber:

# prompt text
TEXT=\u@\h:\w $
# default font width
FONT_WIDTH=0
# green (bgcolor available: 30-37) 30 (black), 31 (red), 32 (green), 33 (yellow), 34 (blue), 35 ( magenta), 36 (cyan), 37 (white)
FOREGROUND_COLOR=32
# black (color available: 40-47)
BACKGROUND_COLOR=40
PS1="\[\033[$FONT_WIDTH;$FOREGROUND_COLOR;$BACKGROUND_COLORm$TEXT\033[0m\]"
# \033[FONT_WIDTHmTEXT\COLOR_DEF2[FONT_WIDTH2m\033[0m adalah pola untuk multiple color
# jika ingin warnanya lebih cerah, gunakan 133 dari pada 033

======= jadikan ini script yang diinclude (source /path/to/this_color.sh) di .bashrc ======
# menentukan warna untuk user
if [ $LOGNAME = $USER ] ; then
USER_COLOR=37
else
USER_COLOR=32
if [ $USER = 'root' ] ; then
USER_COLOR=31
fi

# warna untuk server (bgcolor available: 30-37) 30 (black), 31 (red), 32 (green), 33 (yellow), 34 (blue), 35 ( magenta), 36 (cyan), 37 (white)
SERVER_FGCOLOR=32
SERVER_BGCOLOR=33

# prompt text
TEXT_USER="\033[0;30;"$USER_COLOR"m\u\033[0m"
TEXT_AT="\033[0;30;46m@\033[0m"
TEXT_SERVER="\033[0;$SERVER_FGCOLOR;"$SERVER_BGCOLOR"m\h:\w\033[0m"
TEXT_AFTER="\n->> "
PS1=$TEXT_USER$TEXT_AT$TEXT_SERVER$TEXT_AFTER

# iseng banget ya?