命令行也可以带一点心情

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/u012939880/article/details/100572825

在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\] '

其实这些不用记,具体的设置就是查表的过程,祝你早日找到自己喜欢的风格。

参考

猜你喜欢

转载自blog.csdn.net/u012939880/article/details/100572825