.bash_profile或者.profile中PS1提示符定义

来源:互联网 发布:fdd lte 4g网络 编辑:程序博客网 时间:2024/05/01 21:03

 export PS1="[/[/e[36;1m/]/u@/h/[/e[32;1m/]:/w/[/e[0m/]]$"

-------------->>>>>>效果[hello@computer:~]$

看看这句话,刚刚接触还真整不明白是怎么回事。如果你明白的话可以撤出了,不明白的听我叙来:

我们将上边一句话分成三段来分析"[  /[/e[36;1m/]/u@/h   /[/e[32;1m/]:/w       /[/e[0m/]   ]$"

用[]括起来显示相关信息,在[]之后显示$,作为提示用户输入

用颜色编号为36高亮显示hello@computer, 用颜色编号32高亮显示:~信息,最后恢复颜色。

一、PS1  就是用户平时的提示符,也就是进入终端时候显示的一小串字,(你看看你的那个是什么默认是登陆名@主机名)

二、PS2  第一行没输完,等待第二行输入的提示符

三、默认特殊字符代表的意思

      /a ASCII 响铃字符(也可以键入 /007)

      /d :代表日期,格式为weekday month date,例如:"Mon Aug 1"

      /e ASCII 转义字符(也可以键入 /033)

  /H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux

  /h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略

      /j 在此 shell 中通过按 ^Z 挂起的进程数

      /l 此 shell 的终端设备名(如 "ttyp4")

      /n 换行符
      /r 回车

      /s shell 的名称(如 "bash")

  /t :显示时间为24小时格式,如:HH:MM:SS

  /T :显示时间为12小时格式

      /@ 带有 am/pm 的 12 小时制时间

  /A :显示时间为24小时格式:HH:MM

  /u :当前用户的账号名称

  /v :BASH的版本信息

      /V Bash 版本(包括补丁级别)

  /w :完整的工作目录名称。家目录会以 ~代替

  /W :利用basename取得工作目录名称,所以只会列出最后一个目录

      /! 当前命令在历史缓冲区中的位置

  /# :下达的第几个命令

  /$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$

      /xxx 插入一个用三位数 xxx(用零代替未使用的数字,如 "/007")表示的 ASCII 字符
      // 反斜杠
      /[ 这个序列应该出现在不移动光标的字符序列(如颜色转义序列)之前。它使 bash 能够正确计算自动换行。
      /] 这个序列应该出现在非打印字符序列之后。

上述红色部分是设置ps1用到的特殊符号,/[/e[F;Bm/]用来设置显示字体的颜色

四、/[/e[F;Bm/]

    其中``F''为字体颜色,编号30~37;``B''为背景色,编号40~47。

    可通过``/e[0m''关闭颜色输出;特别的,当B为1时,将显示加亮加粗的文字,详细请看下面的颜色表与代码表。

    颜色表

    前景 背景 颜色
    ---------------------------------------
    30 40 黑色
    31 41 紅色
    32 42 綠色
    33 43 黃色
    34 44 藍色
    35 45 紫紅色
    36 46 青藍色
    37 47 白色

    代码 意义
    -------------------------
    0 OFF

    1 高亮显示

    4 underline

    5 闪烁

    7 反白显示

    8 不可见

 

经过上述分析和学习估计可以自己定制自己想要的颜色了~~~~~~~~~~~

原创粉丝点击