Mac 终端 Termial 高亮配置(PS1变量配置)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Mac 终端 Termial 高亮配置(PS1变量配置),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2171字,纯文字阅读大概需要4分钟。
内容图文

操作环境:
- 系统:Mac 10.12
- 编辑器:vim
一、无脑配置:
1. 打开中端输入:
vi ~/.bash_profile
2. 打开并编辑 .bash_profile 文件:
按键盘“i”,进入编辑模式
复制如下代码:
export CLICOLOR=1 export PS1=‘\[\033[01;33m\]\u@\h\[\033[01;31m\] \W\$\[\033[00m\] ‘
按ESC——》按“w”再按“q”——》重启终端——》完成!
二、高级操作:
转义字符:
上面的例子中使用了反斜杠转义的字符序列,通知bash用特定的值替换他们,bash可识别的转义序列有下面这些:
- \u 用户名
- \h 主机名第一部分
- \H 主机名全称
- \w 当前工作目录(如 “/home/username/mywork”)
- \W 当前工作目录的“基名 (basename)”(如 “mywork”)
- \t 24 小时制时间
- \T 12 小时制时间
- \@ 带有 am/pm 的 12 小时制时间
- \d “Sat Dec 18″ 格式的日期
- \s shell 的名称(如 “bash”)
- \v bash 的版本(如 2.04)
- \V Bash 版本(包括补丁级别)
- \n 换行符
- \r 回车符
- \\ 反斜杠
- \a ASCII 响铃字符(也可以键入 07)
- \e ASCII 转义字符(也可以键入 33)
- \[ 这个序列应该出现在不移动光标的字符序列(如颜色转义序列)之前。它使 bash 能够正确计算自动换行。
- \] 这个序列应该出现在非打印字符序列之后。
知道了全部的转义序列,就可以对自己的终端提示符进行定制了。
颜色配置:
我们设计好提示符内容之后就可以给他们添加颜色,添加颜色就是添加终端(而不是 bash)可识别的专用转义序列,以使它以彩色显示文本的某些部分。标准 Linux 终端和 X 终端允许您设置前景(文字)颜色和背景颜色,如果需要,还可以启用 “bold” 字符。有八种颜色可供我们选择(用数字表示)。
- ———————
- 前景 背景 颜色
- ———————
- 30 40 黑色
- 31 41 红色
- 32 42 绿色
- 33 43 黄色
- 34 44 蓝色
- 35 45 紫红色
- 36 46 青蓝色
- 37 47 白色
- ————————
- 代码 含义
- ————————
- 0 OFF
- 1 高亮显示
- 4 下划线
- 5 闪烁 #闪烁这个选项在我机子上没反应,所以就没有验证,不知道是否可以哈
- 7 反白显示
- 8 不可见
举例:
现在我们可以依据上面的颜色表为提示符添加颜色啦:
下面的定义:
PS1=”\w> ”
变为:
PS1=”\e[32;40m\w> "
到现在为止,提示行尽管已经很不错了,但仍不太完美。在 bash 显示出工作目录以后,我们需要使用 "\e[0m" 序列将颜色重新设置为正常值。
PS1="\e[32;40m\w> \e[0m"
这个定义将显示一个漂亮的绿色提示行,但仍需要做一些扫尾工作。有时我们不需要包括 "40" 这个背景颜色设置,因为它将背景设置为黑色,而黑色是默认颜色。此外,绿色还很暗;我们通过添加一个 "1" 颜色代码来修正这个问题,这将启用更亮的加粗文字。除了这个修改之外,还需要将全部非打印字符用专用的 bash 转义序列 "\[" 和 "\]” 括起来。这两个序列通知 bash,被括起来的字符不占用行上的任何空间,这样就使自动换行能够继续正常工作。没有这两个转义序列,尽管我们有了一个非常漂亮的提示行,但是如果键入的命令恰好到达终端的最右端,就会造成显示混乱。下面是最终的提示行:
PS1=”\[\e[32;1m\]\w> \[\e[0m\]”
我们也不用担心在同一个提示行中使用几种颜色,就像下面这样(我的颜色配置):
PS1=\[\e[36;1m\]\u@suse:\[\e[32;1m\]\w\[\e[36;1m\]> \[\e[0m\]
但是,当我们把这个配置写入.bashrc文件后,会发现一个问题,那就是terminal的标题栏变成了一个永恒不变的“Termianl”了,这可能并不是我们希望的,默认的显示用户名、主机名和当前工作路径(我比较喜欢这个默认的哈),我们可能希望把他配回来。其实配置标题栏和上面说过的配置提示符内容差不多,只是要加上:
\e]2;…\a
中间省略号就可以加我们想让标题栏显示的内容了。
例如我们把 ”\e]2;This is my terminal:>\a” 加进PS1变量中(当然也需要用”\["和"\]“转义序列括起来),标题栏中就会显示 This is my terminal:>
我比较喜欢默认的方式哈,所以我就加进去了 “\e]2;\u@\h:\w\a”,最后配置完成的结果就是:
PS1=”\[\e]2;\u@\h:\w\a\]\[\e[36;1m\]\u@suse:\[\e[32;1m\]\w\[\e[36;1m\]> \[\e[0m\]”
原文:http://www.cnblogs.com/wangchaowei/p/6964478.html
内容总结
以上是互联网集市为您收集整理的Mac 终端 Termial 高亮配置(PS1变量配置)全部内容,希望文章能够帮你解决Mac 终端 Termial 高亮配置(PS1变量配置)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。