本文主要是介绍命令行也可以带一点心情,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在linux下经典的操作就是命令行操作。
都是好的开头是成功的一半,我们重点来看看命令行的开头。
其实在linux下,命令行的行头是一个全局变量 PS1 管理的,比如下面是我安装的Ubuntu的设置如下:
命令是这样:
$ echo $PS1
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$
看这这个命令行,可能有点懵逼,一个长长的字符串而已,怎么能达到我们想要的。
我们先大体看看命令的结构:
\[\e]0;\u@\h: \w\a\] #最前面的一部分是设置标题栏,终端的标题
${debian_chroot:+($debian_chroot)} # 大体就是默认情况下什么也不会做,可以看看 “注释一”
\[\033[01;32m\] #设置颜色
\u@\h #对应我的命令行输出的 hocker@hocker
\[\033[00m\] #设置颜色
: #就是一个分号
\[\033[01;34m\] #设置颜色
\w #对应我的命令行 ~ # ~ 是家目录的意思
\[\033[00m\] #设置颜色
\$ #对应我的命令行 $ # $标示普通用户,#标示root用户
注释一: 《在我的终端提示符中,"$ {debian_chroot:+($debian_chroot)}"做什么?》。
“\[” 和 “\]” 其实就是中括号[ ]的意思, 即里面包含的需要解释需要解释的部分。
我们继续,首先看看各种反斜杠的意思:
转译 | 描述 |
---|---|
\d | 代表日期,格式为weekday month date,例如:“Mon Aug 1” |
\H | 完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux |
\h | 仅取主机的第一个名字,如上例,则为fc4,.linux则被省略 |
\t | 显示时间为24小时格式,如:HH:MM:SS |
\T | 显示时间为12小时格式 |
\A | 显示时间为24小时格式:HH:MM |
\u | 当前用户的账号名称 |
\v | BASH的版本信息 |
\w | 完整的工作目录名称。家目录会以 ~代替 |
\W | 利用basename取得工作目录名称,所以只会列出最后一个目录 |
# | 下达的第几个命令 |
$ | 提示字符,如果是root时,提示符为:# ,普通用户则为:$ |
然后来看看颜色部分的描述:
\e[F;Bm
其中"F’‘为字体颜色,编号30-37;"B’‘为背景色,编号40-47。
可通过``\e[0m’'关闭颜色输出;特别的,当B为1时,将显示加亮加粗的文字,详细请看下面的颜色表与代码表。
前景色编码 | 描述 | 背景色编码 | 描述 | 字体显示格式 | 描述 |
---|---|---|---|---|---|
30 | 黑 | 40 | 黑 | 0 | 终端默认设置 |
31 | 红 | 41 | 深红 | 1 | 高亮显示 |
32 | 绿 | 42 | 绿 | 4 | 下划线 |
33 | 黄 | 43 | 黄色 | 5 | 闪烁 |
34 | 蓝色 | 44 | 蓝色 | 7 | 反白显示 |
35 | 紫色 | 45 | 紫色 | 8 | 隐藏 |
36 | 深绿 | 46 | 深绿 | ||
37 | 白色 | 47 | 白色 |
例子:
\033[1;31;40m # 1 是显示方式,可选。31 是字体颜色。40m 是字体背景颜色。
\033[0m # 恢复终端默认颜色,即取消颜色设置。
如果在前面套上"\[" 和 “\]” ,就环境变量PS1的颜色设置部分就搞定了。
喜欢简单的我:
export PS1='\[\033[01;32m\][\A]\u@\h\[\033[00m\]:\[\033[01;34m\]\W\$\[\033[00m\] '
其实这些不用记,具体的设置就是查表的过程,祝你早日找到自己喜欢的风格。
参考
- Shell的字体颜色设置
- Linux 配置命令行的头( PS1 )
- Linux中PS1的用法
这篇关于命令行也可以带一点心情的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!