首页 > 代码库 > customize shell prompt

customize shell prompt

想必在命令行模式用久了,都看厌了那个单调又丑的提示符,个人认为还占了些位,要是命令长的话还会断行.

技术分享

想改成
技术分享

cd ~/touch .bash_profilevim .bash_profile

osx环境下操作的,关键语法 \[颜色\]prompt参数\[$reset\] 例如:\[$red\]\t\[$reset\]

reset=$(tput sgr0)green=$(tput setaf 2)yellow=$(tput setaf 3)blue=$(tput setaf 4)magenta=$(tput setaf 5)cyan=$(tput setaf 6)PS1="\[$magenta\]\u\[$reset\] at \[$blue\]\h\[$reset\] in \[$yellow\]\W\n\[$reset\]\[$green\]\$\[$reset\]"export PS1

:wq 保存离开

source .bash_profile

tput命令使用方式

prompt参数:

  • \a : an ASCII bell character (07)
  • \d : the date in "Weekday Month Date" format (e.g., "Tue May 26")
  • \D{format} : the format is passed to strftime(3) and the result is inserted into the prompt string; an empty format results in a locale-specific time representation. The braces are required
  • \e : an ASCII escape character (033)
  • \h : the hostname up to the first ‘.‘
  • \H : the hostname
  • \j : the number of jobs currently managed by the shell
  • \l : the basename of the shell’s terminal device name
  • \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
  • \A : the current time in 24-hour HH:MM format
  • \u : the username of the current user
  • \v : the version of bash (e.g., 2.00)
  • \V : the release of bash, version + patch level (e.g., 2.00.0)
  • \w : the current working directory, with $HOME abbreviated with a tilde
  • \W : the basename of the current working directory, with $HOME abbreviated with a tilde
  • \! : 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 control sequence into the prompt
  • \] : end a sequence of non-printing characters

文章参考,文章参考2

customize shell prompt