样式开启

echo -e "\033[43mhello\033[0m"

linux 如何配置java 黑体 宋体的字体_字体颜色

其中的\033[nmlinux 如何配置java 黑体 宋体的字体_下划线_02代表的就是开启样式,一般而言,习惯使用\033[0m作为结尾。

但实际上所谓结尾是不必要的,死记硬背你也能发现一些莫名其妙的点。

为什么开始是[但是却没有收尾的]

尝试一下这个

linux 如何配置java 黑体 宋体的字体_下划线_03

后面的全部都会变色,好像真的是需要关闭一样,不过等会知道模式以后,你会发现这个其实也是

字体样式

echo -e "\033[1mhello\033[0m"

linux 如何配置java 黑体 宋体的字体_字体颜色_04

发现没有,第一个一点,这个就是模式,列表如下

type

description

0

关闭(默认)样式

1

高亮

3

指定前景色

需要指定参数

4

单独使用指定下划线

有参数指定背景色

5

闪烁

7

反显

前景色和背景色调换

8

隐藏

试验

linux 如何配置java 黑体 宋体的字体_下划线_05

5的时候闪烁刚好隐掉了,自己试验肯定能看到效果。

指定颜色

number

color

0


1


2

绿

3


4


5


6

深绿

7


颜色只算是二级参数,需要开启颜色开关

3是指定前景色。

4是指定背景色。

回顾一下echo -e "\033[43mhello\033[0m"

linux 如何配置java 黑体 宋体的字体_下划线_06

43,背景色是黄色。

前景色,也就是字体颜色,默认是白色。

然后换一换

linux 如何配置java 黑体 宋体的字体_下划线_07

结果符合预期,并且可以总结如下

  • 前景默认白色,背景默认黑色,37;40没啥效果
  • 多个选项之间使用;进行分隔
  • 前景色和背景色不能一样,否则看不见内容

还能扩展两个点

  • 可以同时指定多个样式
  • 隐藏时前景色和背景色同为黑

试验

linux 如何配置java 黑体 宋体的字体_下划线_08

7的时候,前景色和背景色的确对调了。

4的下划线也很明显。

同时0黑色,的确看不见。

光标位置

光标的样式指定就不是m了,m是关于字体的。

光标的设置样式如下,模式各异。

command

description

A

上移

B

下移

C

左移

D

右移

2J

隐藏前面信息

K

清除光标到行尾内容

s

保存光标位置

u

恢复光标位置

?25l

隐藏光标

?25h

显示光标

ABCD需要指定移动长度,使用时为nA这样。

方位

linux 如何配置java 黑体 宋体的字体_背景色_09

方位问题呢,试出两个坑

  • D的左移不顶用,不采用任何模式才是左移效果
  • A的上移一行,导致结果会打印在命令之上()

关于A你在已有内容的时候去执行此命令,重复执行会有更深的感触。

抹黑

echo -e "\033[2Jhello\033[0m"

linux 如何配置java 黑体 宋体的字体_字体颜色_10

前面是结果,后面是命令。

别问我为什么这么截,因为运行了前面的就会被隐藏,结果就是一片黑。

如何证明是被抹黑?你多运行几次,就会发现结果在慢慢下移了。

空模式是直接不显示后面几行,而这个,就是抹黑前面几行了。

清理行

linux 如何配置java 黑体 宋体的字体_下划线_11

K后面跟上\n就会清空。不过更多是跟上光标移动使用的。

位置记录

linux 如何配置java 黑体 宋体的字体_背景色_12

先记录一下位置,顺便留空,然后再覆盖,简直骚气。

显示和隐藏

linux 如何配置java 黑体 宋体的字体_下划线_13

中途光标丢了,不见了,打个命令都心惊胆战的。

你可以去阴一下别人。

小结

个人体会,如果是为了显示信息格式,不得不用到PS1甚至PS2

如果只是单纯的字体颜色控制,使用echo -e就可以直接指定就是了。

你说设置的光标的隐藏,还有字体颜色,只要不\033[0m去指定默认样式,它就会在控制台生效。

不过设置了黑色以外的背景色的话,需要好好考虑一下。

你只要clear就会知道背景色这种方法设置真的好难受。

最后一句,\033[0m真的不是结束,只能说默认样式而已。

算作默认样式的快捷开启办法,也就是\033[37;40m的快捷方式。