zoukankan      html  css  js  c++  java
  • 自定义shell终端提示符及颜色即修改 PS1文件 (以Centos为例)

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

    1. Linux登录过程中加载配置文件顺序:

    /etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc → [/etc/bashrc]

    可查看默认的~/.bashrc文件如下:

    [root@~/wade/codeReview/redis-2.8.17] cat ~/.bashrc 
    # .bashrc
     
    # User specific aliases and functions
     
    # Source global definitions
    if [ -f /etc/bashrc ]; then
    	. /etc/bashrc
    fi

    2. Shell命令提示符及颜色是由PS1来配置:

    [root@/etc/init.d] echo $PS1  #显示当前使用的PS1样式
     [[e[32;40m]u@w]
    [root@/etc/init.d] # PS1='[u@h: w]$' #本人使用的格式,记录下!

    其中PS1常用的参数含义如下:

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

    3. 颜色值设置: PS1中设置字符颜色的格式为:[e[F;Bm],其中“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[32;40m]u@h w ]$ '

    4. 以笔者的~/.bashrc配置为例:

    [root@~]# cat ~/.bashrc 
    # .bashrc
     
    # User specific aliases and functions  ##用户特定的别名和函数即用户定义变量
    export PS1='[[e[32;40m]u@h w]$ '
       #添加此句保存退出后重新加载 source ~/.bashrc   即可
    # Source global definitions  #全局 源的定义
    if [ -f /etc/bashrc ]; then
    	. /etc/bashrc
    fi

    5. 修改完成后重新加载下~/.bashrc即可生效:

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

    |Linux 下的文件颜色,cp /etc/DIR_COLORS ~/.dircolors 先备份一个,再进行修改!
    颜色方案同上。
    |

  • 相关阅读:
    【ST】lab01——Junit and Eclemma
    【SPM】hw1——个人房间装修
    【ST】hw2——find the error in the follow case
    【ST】Describe an error from my past projects
    ST homework4 --- 图覆盖
    ST lab1——Junit和覆盖测试的初探
    ST work12——failure,fault,error
    ST work1——印象最深的一个bug DJI 激活时报 SDK_ACTIVE_SDK_VERSION_ERROR
    C# note 06——delegate 和 event
    C# note 05——异常处理
  • 原文地址:https://www.cnblogs.com/qzqdy/p/8058074.html
Copyright © 2011-2022 走看看