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”之前同等长度的字符,只看这段文字描述的话可能不容易理解,具体效果查看示例。
⑧\表示插入“\”本身。**
实际操作如下:
4、------使用echo命令的-e选项,除了能够输出转义字符,还能够在命令行中输出彩色的字符,或是带有彩色背景的字符。
例:
从图中来看,一共可以分为两部分,\033[31m 和\033[0m。
这些代码有一个专业名词,叫做“ANSI控制码”。
我们习惯把\033[31m理解成“开始输出红色字符”,把\033[0m理解成“结束输出红色字符”。
当echo -e遇到\033[31m的时候,就认为自己要输出红色字符了,\033[31m就是一个信号,它告诉echo -e,需要开始输出红色字符了,\033[0m也是一种信号,它告诉echo -e命令,红色字符已经不能输出了,在输出的字符应该是黑白字符了,不能是彩色的了。
那么,如果我们想要输出绿色字符,该怎么写呢? 示例如下:
通过上面两行命令可以看出,输出红色字符与输出绿色字符唯一区别就是红色数字。所以我们只要改变相应位置的数字,就能改变输出字符的颜色,所以,我们将能够输出的颜色对应的数字总结如下:
30 :黑色
31 :红色
32 :绿色
33 :黄色
34 :黄色
35 :紫色
36 :浅蓝色
37 :灰色
输出效果如下:
在这里插入图片描述除了能够使用echo命令输出彩色字符,我们还能够为彩色字符添加彩色背景,比如,我们想要输出据欧黄色背景的红色字符,具体情况如下:
可以看出,唯一不同的地方就是带有黄色背景的命令中,多了个“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 消除从光标到行尾的内容