1.简介

echo命令用于在shell中打印shell变量的值,或者直接输出指定的字符串。

2.命令格式代码语言:javascript复制echo [选项] [参数]3.选项说明代码语言:javascript复制-n:输出时,不在行尾添加换行符;

-e:使反斜杠的转义功能生效;

-E:禁用反斜杠的转义功能,为默认选项;

--help:显示帮助信息;

--version:显示版本信息;使用-e选项时,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:

代码语言:javascript复制\\:反斜杠;

\a:发出警告声;

\b:删除前一个字符;

\c:截断不输出\c后面的内容;

\f:换行,但光标仍旧停留在原来的位置;

\n:换行且光标移至行首;

\r:光标移至行首,但不换行;

\t:插入tab;

\v:与\f相同;

\nnn:插入nnn(八进制)所代表的ASCII字符;

\xHH:插入HH(十六进制)所代表的ASCII字符;4.常用示例(1)不换行输出。

echo默认换行输出,使echo不换行输出有两种方法。

方法一:使用命令选项-n禁止输出换行符。

代码语言:javascript复制echo -n what you want to output方法二:使用命令选项 -e 让echo识别转义字符\c,echo默认是不识别转义字符的。转义字符\c使用man echo查看echo的使用手册,其意思是produce no further output,表示截断不输出\c后面的内容。

代码语言:javascript复制echo -e lalalala\cend #输出:lalalala(2)使用echo打印带有颜色的字体。

Linux终端下输出带颜色的文字只需在文字前面添加如下格式:

代码语言:javascript复制\033[显示方式;前景色;背景色m其中\033是ESC健的八进制,\033[即告诉终端后面是设置颜色的参数,显示方式,前景色,背景色均是数字。数字含义如下:

显示方式

意义

0

终端默认设置

1

高亮显示

4

使用下划线

5

闪烁

7

反白显示

8

不可见

颜色数字代号如下:

前景色

背景色

颜色

30

40

黑色

31

41

红色

32

42

绿色

33

43

黃色

34

44

蓝色

35

45

紫红色

36

46

青蓝色

37

47

白色

(a)显示红色字体:

代码语言:javascript复制echo -e "\e[1;31mThis is red text\e[0m"输出:

This is red text

其中,\e[0m表示恢复终端默认设置。

(b)显示绿色背景字体:

代码语言:javascript复制echo -e "\e[1;42mGreed Background\e[0m" Greed Background输出:

(c)文字闪动。使用前景色31(红色),背景色42(绿色)闪动:

代码语言:javascript复制echo -e "\033[5;31;42mMySQL Server Stop...\033[0m"参考文献[1]man echo

[2]Linux命令大全.echo命令

[3]使用echo输出带颜色的字体