9AMC 发表于 2018-8-27 10:45:49

Linux修改Shell命令提示符及颜色

  1. Linux登录过程中加载配置文件顺序:
  /etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc →
  cat ~/.bashrc   #查看~/.bashrc
  # .bashrc
  # User specific aliases and functions
  # Source global definitions
  if [ -f /etc/bashrc ]; then
  . /etc/bashrc
  fi
  2. Shell命令提示符及颜色是由PS1来配置:
  echo $PS1
  [\[\e\u@\w]
  其中PS1常用的参数含义如下:
  \d :#代表日期,格式为weekday month date,例如:"Mon Aug 1"
  \H :#完整的主机名称
  \h :#仅取主机的第一个名字
  \t :#显示时间为24小时格式,如:HH:MM:SS
  \T :#显示时间为12小时格式
  \A :#显示时间为24小时格式:HH:MM
  \u :#当前用户的账号名称
  \v :#BASH的版本信息
  \w :#完整的工作目录名称
  \W :#利用basename取得工作目录名称,所以只会列出最后一个目录
  \# :#下达的第几个命令
  \$ :#提示字符,如果是root时,提示符为:# ,普通用户则为:$
  3. 颜色值设置:
  PS1中设置字符颜色的格式为:\[\e,其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47。颜色表如下:
  F       B
  30      40      黑色
  31      41      红色
  32      42      绿色
  33      43      黄色
  34      44      蓝色
  35      45      紫红色
  36      46      青蓝色
  37      47      白色
  根据颜色表,套用入字符颜色设置格式中,就可以对linux终端命令行颜色进行个性化设置了。比如要设置命令行的格式为绿字黑底,显示当前用户的账号名称、主机的第一个名字、完整的当前工作目录名称、24小时格式时间,就可以使用如下的命令:
  #PS1='[\[\e\u@\h \w \t]$ '
  4.~/.bashrc的配置:
  cat ~/.bashrc
  # .bashrc
  # User specific aliases and functions
  export PS1='[\[\e\u@\w]\$ '   #绿字体,黑色背景,由于没关闭颜色输出,命令行的其
  他输入也会是 绿色字体,黑色背景。
  # export PS1='[\[\e\u@\h \w]\$\e[0m'    #红字体,加粗加亮背景。可通过"\e[0m"关闭颜
  色输出;当B为1时,显示加亮加粗的文字。
  # Source global definitions
  if [ -f /etc/bashrc ]; then
  . /etc/bashrc
  fi
  5. 修改完成后,重新加载下~/.bashrc:
  source ~/.bashrc

页: [1]
查看完整版本: Linux修改Shell命令提示符及颜色