echo命令—详解

1.文本输出:echo命令后面跟上输出的文本

2.echo自动换行; echo -n 表示不换行输出

3. echo -e 表示转义字符

①\b转义后相当于按退格键(backspace),但前提是“\b”后面存在字符,具体效果参考下方示例。

②\c不换行输出,在“\c”后面不存在字符的情况下,作用相当于echo -n,具体效果参考下方示例。

③\n换行,具体效果参下方示例。

④\f换行,但是换行后的新行的开头位置连接着上一行的行尾,具体效果参下方示例。

⑤\v与\f相同。

⑥\t转以后表示插入tab,即制表符。

⑦\r光标移至行首,但不换行,相当于使用“\r”以后的字符覆盖“\r”之前同等长度的字符,只看这段文字描述的话可能不容易理解,具体效果查看示例。

⑧\表示插入“\”本身。**

实际操作如下:

ECHO后空一行 echo tab 空格_转义字符


ECHO后空一行 echo tab 空格_背景颜色_02


4、------使用echo命令的-e选项,除了能够输出转义字符,还能够在命令行中输出彩色的字符,或是带有彩色背景的字符。

例:

ECHO后空一行 echo tab 空格_ECHO后空一行_03

从图中来看,一共可以分为两部分,\033[31m 和\033[0m。

这些代码有一个专业名词,叫做“ANSI控制码”。

我们习惯把\033[31m理解成“开始输出红色字符”,把\033[0m理解成“结束输出红色字符”。

当echo -e遇到\033[31m的时候,就认为自己要输出红色字符了,\033[31m就是一个信号,它告诉echo -e,需要开始输出红色字符了,\033[0m也是一种信号,它告诉echo -e命令,红色字符已经不能输出了,在输出的字符应该是黑白字符了,不能是彩色的了。

那么,如果我们想要输出绿色字符,该怎么写呢? 示例如下:

ECHO后空一行 echo tab 空格_转义字符_04


ECHO后空一行 echo tab 空格_转义_05


通过上面两行命令可以看出,输出红色字符与输出绿色字符唯一区别就是红色数字。所以我们只要改变相应位置的数字,就能改变输出字符的颜色,所以,我们将能够输出的颜色对应的数字总结如下:

30 :黑色

31 :红色

32 :绿色

33 :黄色

34 :黄色

35 :紫色

36 :浅蓝色

37 :灰色

ECHO后空一行 echo tab 空格_转义_06


输出效果如下:

在这里插入图片描述除了能够使用echo命令输出彩色字符,我们还能够为彩色字符添加彩色背景,比如,我们想要输出据欧黄色背景的红色字符,具体情况如下:

ECHO后空一行 echo tab 空格_ECHO后空一行_07


可以看出,唯一不同的地方就是带有黄色背景的命令中,多了个“43;”其他部分都一样。

背影颜色编号对应的数字如下:

-----------> 40 :黑色
 -----------> 41 :红色
 -----------> 42 :绿色
 -----------> 43 :黄色
 -----------> 44 :蓝色
 -----------> 45 :紫色
 -----------> 46 :浅蓝色
 -----------> 47 :灰色5、我们之前说过,”\033[31m”这些代码都属于ANSI控制码。
 ANSI控制码中不仅有控制颜色的控制码,还有一些提供其他功能的控制码,总结如下:
 \33[0m 关闭所有属性,也就是说此控制码前面的控制码将会失效,此控制码中的0可以省略。1、\33[1m 设置高亮度
 2、\33[4m 下划线
 3、\33[5m 闪烁
 4、\33[7m 反显,撞色显示,显示为白底黑字,或者为黑底白字
 5、\33[8m 消隐,字符颜色将会与背景颜色相同
 6、\33[30m----\33[37m设置字体颜色
 7、\33[40m----\33[47m设置背景颜色
 8、\33[K 消除从光标到行尾的内容