Monday, June 21, 2010

Customize Linux Bash Envirenment

Configure .bashrc to customize user’s bash environment.
.bashrc file is locate in the user’s home directory. It contain lots of configurable items which can customize how the bash looks like and how user interactive with bash.
  • Aliases could be configured under ‘#User specific aliases and functions’ in the .bashrc file. After add aliases item in the .bashrc file, user need log-off and log-in the system or restart bash by execute ‘bash’ command in the terminal to active the newly added aliases.
    Aliases example: alias cls=’clear’
  • Bash Prompt could be configured under ‘# Source global definitions’ in the .bashrc file. Environment variable $PS1 which could be change by PS1=’optionsPlusAnything’ is represent the bash prompt. The available options are as following
    • \a an ASCII bell character (07)
    • \d the date in “Weekday Month Date” format
    • (e.g., “Tue May 26”)
    • \e an ASCII escape character (033)
    • \h the hostname up to the first `.’
    • \H the hostname
    • \n newline
    • \r carriage return
    • \s the name of the shell, the basename of $0
    • (the portion following the final slash)
    • \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
    • \u the username of the current user
    • \v the version of bash (e.g., 2.00)
    • \V the release of bash, version + patchlevel
    • (e.g., 2.00.0)
    • \w the current working directory
    • \W the basename of the current working direc-
    • tory
    • \! the history number of this command
    • \# the command number of this command
    • \$ if the effective UID is 0, a #, otherwise a
    • $
    • \nnn the character corresponding to the octal
    • number nnn
    • \ a backslash
    • \[ begin a sequence of non-printing characters,
    • which could be used to embed a terminal con-
    • trol sequence into the prompt
    • \] end a sequence of non-printing characters
  • Configure bash shell options with set/shopt
    set -o check the current bash shell option setting
    set -o bashOption to enable the bashOption
    set +o bashOptioon to disable the bashOption

No comments: