美文网首页
Linux Shell的提示字符设置 - PS1变量用法

Linux Shell的提示字符设置 - PS1变量用法

作者: RunicBean | 来源:发表于2018-12-30 20:51 被阅读0次

    当每次在Linux中使用回车执行命令之后,都会回到最开始的提示字符处,这个过程就是取用了set命令下自定义变量PS1的值。

    基本格式

    [cadmin@localhost ~]$ echo $PS1
    [\u@\h \W]\$
    

    此处的[\u@\h \W]\$就是[cadmin@localhost ~]$的通用格式,通过修改PS1变量可以达到修改提示字符的目的。在这之前,需要先了解此处用的符号含义:

    \d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
    \H :完整的主机名称,在此处为localhost.localdomain
    \h :仅取主机名中的第一个名字,在此处为localhost
    \t :显示时间为24小时格式『HH:MM:SS』
    \T :显示时间为12小时格式『HH:MM:SS』
    \A :显示时间为24小时格式『HH:MM』
    \@:显示时间为12小时格式『AM/PM』
    \u :当前用户的账号名称,此处为cadmin
    \v :BASH的版本信息
    \w :完整的工作目录名称
    \W :利用basename取得工作目录名称,只显示最后一个目录名
    \# :下达的第几个命令
    \$ :提示字符,如果是root用户,提示符为 # ,普通用户则为 $

    经过调整,自己最习惯的排列方式为\u @ \h:\w\$

    颜色格式

    PS1中的颜色参数格式为\[\e[F;Bm\],F代表文本前景色,B代表背景色,这一串参数的位置就是这个颜色开始生效的位置,且后出现的颜色参数会覆盖前面的颜色参数。
    例如\[\033[01;32m\]\u @ \h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$赋值给PS1后,提示字符变成:

    PS1赋值
    最终,自己最习惯的排列加上比较醒目的格式是:
    \[\033[01;32m\]\u @ \h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$

    永久生效

    在当前shell里面的修改都只是暂时性的,只有将对应变量的赋值加入到对应用户的.bashrc下,才能在启动时就生效。

    cadmin @ localhost:~$cd  # 进入对应用户家目录
    vi .bashrc  # 编辑.bashrc
    

    在文件最后加上PS1="\[\033[01;32m\]\u @ \h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$",然后source .bashrc即可。

    相关文章

      网友评论

          本文标题:Linux Shell的提示字符设置 - PS1变量用法

          本文链接:https://www.haomeiwen.com/subject/lwfblqtx.html