zoukankan      html  css  js  c++  java
  • linux 个性化设置shell提示

    1.linux 用户登录过程中 相关文件执行顺序:
    /etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc → [/etc/bashrc]
    2.使用PS1 改变shell命令提示符和颜色
      默认的PS1(可通过echo $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
    颜色如下:
    0 重新设置属性到缺省设置
    1 设置粗体
    2 设置一半亮度(模拟彩色显示器的颜色)
    4 设置下划线(模拟彩色显示器的颜色)
    5 设置闪烁
    7 设置反向图象
    22 设置一般密度
    24 关闭下划线
    25 关闭闪烁
    27 关闭反向图象
    30 设置黑色前景
    31 设置红色前景
    32 设置绿色前景
    33 设置黄色前景
    34 设置蓝色前景
    35 设置紫色前景
    36 设置青色前景
    37 设置白色前景
    38 在缺省的前景颜色上设置下划线
    39 在缺省的前景颜色上关闭下划线
    40 设置黑色背景
    41 设置红色背景
    42 设置绿色背景
    43 设置黄色背景
    44 设置蓝色背景
    45 设置紫色背景
    46 设置青色背景
    47 设置白色背景
    49 设置缺省黑色背景 
    其他有趣的代码还有:
    33[2J  清除屏幕
    33[0q  关闭所有的键盘指示灯
    33[1q  设置“滚动锁定”指示灯 (Scroll Lock)
    33[2q  设置“数值锁定”指示灯 (Num Lock)
    33[3q  设置“大写锁定”指示灯 (Caps Lock)
    33[15:40H 把关闭移动到第15行,40列
    07 发蜂鸣生beep 
    4.设置shell提示符颜色,可以在全局shell生效,也可以为单个用户设置,取决于在那个bashrc中
    下面为了区分root用户和普通用户,我在/etc/bashrc下设置
    if [ $USER == "root" ]; then
            export PS1='[[e[33;49m]u@H w]$'
    else
            export PS1='[[e[32;49m]u@H w]$'
    fi
    也可起设置多个颜色
     判断root ,显示为红色,普通用户为绿色,并记录path
    if [ $USER == "root" ];then
            PS1='[[e[31m]u[e[m]@[e[33m]H [e[m]w]$'
    else
            PS1='[[e[32m]u[e[m]@[e[33m]H [e[m]w]$'
    fi
    还可以记录命令条数
    if [ $USER == "root" ];then
            PS1='[e[35m]|#|[e[m][[e[31m]u[e[m]@[e[33m]H [e[m]w]$'
    else
            PS1='[e[35m]|#|[e[m][[e[32m]u[e[m]@[e[33m]H [e[m]w]$'
    fi
  • 相关阅读:
    网友谈:Dictionary.ContainsKey和List.BinarySearch哪个效率高
    C# WinForm 中在窗口标题栏上加按钮
    将Txt文件转换成dataset[原创]
    四个常见的排序算法[原创]
    改版后的groupbox[原创]
    转 五种提高 SQL 性能的方法
    转 牢记!SQL Server数据库开发的二十一条军规(SQL收藏)
    源码详解Java的反射机制
    java多线程采集+线程同步
    jQgrid API
  • 原文地址:https://www.cnblogs.com/pycode/p/6508407.html
Copyright © 2011-2022 走看看