customize shell prompt

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

想改成

cd ~/
touch .bash_profile
vim .bash_profile

osx环境下操作的,关键语法 [颜色]prompt参数[$reset] 例如:[$red] [$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
[$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
  •  : newline(换行)
  •  : carriage return
  • s : the name of the shell, the basename of $0 (the portion following the final slash)
  •  : 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 $
  • nn : 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

原文地址:https://www.cnblogs.com/jHenry/p/4263450.html