网上类似的文章有很多,但是都是转来转去的,没有经过测试,按照很多文章的方法会造成你设置之后的终端在换行和删除输入字符时终端显示会乱七八糟,于是我重新整理了一下,希望对像我这样的初学者有帮助。

其实就是如何设置PS1 变量的问题;

首先我们要知道如下几张表:

前景              背景               颜色

---------------------------------------

30                40               黑色

31                41               紅色

32                42               綠色

33                43                黃色

34                44               藍色

35                45               紫紅色

36                46               青藍色

37                47               白色

代码               意义

-------------------------

0                 OFF

1                 高亮显示

4                 underline

5                 闪烁

7                 反白显示

8                 不可见

序列 说明

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

d "Wed Sep
06" 格式的日期

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

h 主机名的第一部分(如 "mybox" )

H 主机的全称(如 "mybox.mydomain.com" )

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

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

n 换行符

r 回车符

s
shell 的名称(如 "bash" )

t
24 小时制时间(如 "23:01:01" )

T
12 小时制时间(如 "11:01:01" )

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

u 用户名

v
bash 的版本(如 2.04 )

V
Bash 版本(包括补丁级别) ?/td>;

w 当前工作目录(如 "/home/drobbins" )

W 当前工作目录的“基名 (basename) ”(如 "drobbins" )

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

# 命令编号(只要您键入内容,它就会在每次提示时累加)

$ 如果您不是超级用户 (root) ,则插入一个 "$" ;如果您是超级用户,则显示一个 "#"

xxx 插入一个用三位数 xxx (用零代替未使用的数字,如 "07" )表示的 ASCII 字符

\ 反斜杠

[ 这个序列应该出现在不移动光标的字符序列(如颜色转义序列)之前。它使 bash 能够正确计算自动换行。

] 这个序列应该出现在非打印字符序列之后。

首先我们不考虑添加颜色的问题,首先在
~/.bashrc文件添加,

export PS1="u@h:w$"

然后新开一个终端,你看不到和以前有什么区别,因为我们一般系统默认的设置就是这样的,关于u,h,w和$的含义参见上表,

你可以尝试修改为

export PS1="u"

export PS1="h"

export PS1="hello@u "

其实修改字体颜色的公式很简单 为:

PS1=颜色+字符或序列+颜色+字符或序列......

关于颜色的设置它也有一个公式

颜色=33[代码;前景;背景m

如:33[1;32;40m 表示高亮显示字体为绿色,背景色为黑色

注意:

要将全部非打印字符用专用的 bash 转义序列 "[" 和 "]" 括起来。这两个序列通知 bash ,被括起来的字符不占用行上的任何空间,这样就使自动换行能够继续正常工作。

这点很关键要不然等你设好了颜色,你的终端换行会乱七八糟

所以我们的颜色需要这样(网上很多文章都漏过了这一步)

颜色=[ 33[代码;前景;背景m]

做个试验吧

在~/.bashrc中添加

PS1="[33[1;32;40m]u" 新开终端或者使用命令source
~/.bashrc更新一下变量,效果如下(可能你的背景还为白色,那不要紧后面我会告诉你在哪里设置

你应该看到你的字体是绿色)

我的设置如下:

PS1="[33[1;32;40m][[33[0;32;40m]u@h:[33[1;35;40m]w[33[1;32;40m]][33[1;31;40m]$[33[1;32;40m]"

效果图如下:

关于终端背景为白色的问题点击Edit->profiles...设置如下

如果觉得这样设置不好看,你可以自己对着表修改。

另外我使用的是Ubuntu10.1

0在设置PS1变量时,我开始只在/root/.bashrc添加了PS1定义,但是发现只有root用户

终端颜色改变,于是我又在~/.bashrc中添加了PS1变量,这样root用户和一般用户的终端字体才都改过来了,

我在etc/.profile中添加了PS1变量也是不行,很奇怪。所以你最好在/root/.bashrc和~/.bashrc中都添加 PS1变量的定义


 青春就应该这样绽放  游戏测试:三国时期谁是你最好的兄弟!!  你不得不信的星座秘密

[转载]Linux下终端字体颜色设置方法的更多相关文章

  1. Linux下终端字体颜色设置方法

    颜色=\033[代码;前景;背景m 如:\033[1;32;40m表示高亮显示字体为绿色,背景色为黑色 颜色=\[\033[代码;前景;背景m\] echo -e "this is a \0 ...

  2. CSS 文本字体颜色设置方法(CSS color)

    CSS 文本字体颜色设置方法(CSS color) 一.认识CSS 颜色(CSS color) 这里要介绍的是网页设置颜色包含有哪些:网页颜色规定规范. 1.常用颜色地方包含:字体颜色.超链接颜色.网 ...

  3. linux 下 NetBeans 字体大小设置

    在linux mint 12下安装了 NetBeans7.1.2使用之后,觉得字体不好看,字体普遍特别大,分三个方面改NetBeans的字体. 1. 代码字体大小 点击NetBeans菜单,工具--& ...

  4. linux下终端字体彩色显示

     linux下python彩色显示   跨平台彩色显示库https://pypi.python.org/pypi/colorama   jlive@MacBook-Pro:py_demo $pytho ...

  5. [转载]linux下清除Squid缓存的方法记录

    在日常运维工作中,只要用到squid缓存服务,就会常常被要求清理squid缓存. 比如公司领导要求删一篇新闻,新闻是生成的静态.运维人员把服务器上静态的新闻页面删除了后,不料代理服务器上缓存还有.缓存 ...

  6. [转载] Linux下查看内存使用情况方法总结

    原文: http://9iphp.com/linux/1247.html 强烈推荐 htop.

  7. linux下生成core dump文件方法及设置

    linux下生成core dump文件方法及设置    from:http://www.cppblog.com/kongque/archive/2011/03/07/141262.html core ...

  8. linux 的终端字体色和背景色的修改方法(一)

    更改Linux系统终端的颜色主题 随着Linux系统在服务器端的崛起,Linux也在慢慢进军个人桌面系统领域.如果在使用Linux系统的终端时,对其颜色主题不是很满意,该怎么修改颜色的主题呢?今天笔者 ...

  9. 超链接字体颜色设置(通过html/css的设置方法)

    超链接字体颜色设置是通过css来设置,a链接的颜色设置常用的有以下两种,1.超链接a的初始状态颜色,2.超链接字体的鼠标滑过颜色,还有两种病不常用:3.超链接字体的已访问颜色,4.超链接字体在按下鼠标 ...

随机推荐

  1. Easyui1.3.4+IIS6.0+IE8兼容问题解决

    刚刚学习JQuery Easyui,就遇到了拦路虎,最新版本1.3.4下载下来部署到win2003 + IIS6.0中发现所有demo都不可以渲染,IE8提示错误如下: 详细内容如下: 用户代理: M ...

  2. "Your computer could not be joined to the domain. You have exceeded the maximum number of computer accounts you are allowed to create in this domain. Contact your system administrator to have this limit reset or increased."

    用一个普通的域帐号玩私有云的时候,遇到了如下的报错. "Your computer could not be joined to the domain. You have exceeded ...

  3. 异常捕获 UncaughtExceptionHandler MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  4. CentOS 6和CentOS 7防火墙的关闭

    CentOS6.5查看防火墙的状态: 1 [linuxidc@localhost ~]$service iptable status 显示结果: 1 2 3 4 5 [linuxidc@localho ...

  5. installers PHPManager

    === Verbose logging started: // :: Build type: SHIP UNICODE 5.00.10011.00 Calling process: C:\Progra ...

  6. [Tool] Enable Prettier in VSCode as Format on Save and add config files to gitingore

    First of all, install Prettier extension: "Pettier - Code formatter". The open the VSCode ...

  7. DELL平板如何安装WIN10系统 -标记活动分区的问题

    在计算机管理中没有这个选项   可以在分区助手软件中,选中C分区之后,左边有设置活动分区,然后左上角提交执行即可        

  8. VMware vCloud Director network ports diagram

    see:http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&exter ...

  9. Microsoft® SQL Server® 2008 Express with Tools

    https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=22973

  10. angularjs中的坑

    ng-show 等ng的指令中不需要使用{{parameter}}来取值,回无效