如何修改Linux命令提示符

时间:2022-09-02 17:53:49

Linux修改环境变量PS1(命令行提示符),可以使用vi编辑/etc/profile文件,在最后加上:export PS1=’[u@h W]$ ‘即可,其中u显示当前用户账号,h显示当前主机名,W显示当前路径,$显示’$'符号
  W 代替 w 就可以实现绝对路径到相对路径的转换
  下面简单说说环境下默认的特殊符号所代表的意义:
  d :代表日期,格式为weekday month date,例如:”Mon Aug 1″
  H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
  h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
  t :显示时间为24小时格式,如:HH:MM:SS
  T :显示时间为12小时格式
  A :显示时间为24小时格式:HH:MM
  u :当前用户的账号名称
  v :BASH的版本信息
  w :完整的工作目录名称。家目录会以 ~代替
  W :利用basename取得工作目录名称,所以只会列出最后一个目录
  # :下达的第几个命令
  $ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
  但是这样设置之后显示的提示符是没有颜色的,如果希望加入颜色设置,可以这样:
  PS1=”e[1;32mue[me[1;33m@e[me[1;35mhe[m:w$ "
  此时,在终端中的显示应该是彩色的提示符了,其中的e[1;xxm和e[m就是改变终端字体颜色的部分,前者是修改颜色,后者是恢复到正常显示。但是 这时还会有问题,在提示符中输入第一行时,回车换行不正常,导致显示很混乱,因此,除了这个修改之外,还需要将全部非打印字符用专用的 bash 转义序列 "[" 和 "]” 括起来。这两个序列通知 bash,被括起来的字符不占用行 上的任何空间,这样就使自动换行能够继续正常工作。最终版本如下(可解决带颜色提示符的不换行问题):
  PS1=”[e[1;32m]u[e[m][e[1;33m]@[e[m][e[1;35m]h[e[m]:w$ “
  其中,颜色表示为:30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white。
  如果需要改变目录在命令行下显示颜色:
  1、将/etc/DIR_COLORS文件cp到~/下,并改名为.dir_colors。
  2、编辑.dir_colors文件,找到“DIR 01;34   # directory”,将34改为36。
  你可以找到文件的两行注释:
  # Text color codes:
  # 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
  按照颜色对应的数字,你还可以把目录显示颜色改成其他的。
  同样其他的显示效果(包括背景)也可以参照说明进行修改。
  这样你就可以定制自己的linux下命令行方式下的个性化显示效果了。
  3、重新登录,就可以看到修改后的效果了。