1 | echo
|
2 | ===
|
3 |
|
4 | 输出指定的字符串或者变量
|
5 |
|
6 | ## 补充说明
|
7 |
|
8 | **echo命令** 用于在shell中打印shell变量的值,或者直接输出指定的字符串。linux的echo命令,在shell编程中极为常用, 在终端下打印变量value的时候也是常常用到的,因此有必要了解下echo的用法echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。
|
9 |
|
10 | ### 语法
|
11 |
|
12 | ```shell
|
13 | echo(选项)(参数)
|
14 | ```
|
15 |
|
16 | ### 选项
|
17 |
|
18 | ```shell
|
19 | -e:启用转义字符。
|
20 | -E: 不启用转义字符(默认)
|
21 | -n: 结尾不换行
|
22 | ```
|
23 |
|
24 | 使用`-e`选项时,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
|
25 |
|
26 | - `\a` 发出警告声;
|
27 | - `\b` 删除前一个字符;
|
28 | - `\c` 不产生进一步输出 (\c 后面的字符不会输出);
|
29 | - `\f` 换行但光标仍旧停留在原来的位置;
|
30 | - `\n` 换行且光标移至行首;
|
31 | - `\r` 光标移至行首,但不换行;
|
32 | - `\t` 插入tab;
|
33 | - `\v` 与\f相同;
|
34 | - `\\` 插入\字符;
|
35 | - `\nnn` 插入 `nnn`(八进制)所代表的ASCII字符;
|
36 |
|
37 | ### 参数
|
38 |
|
39 | 变量:指定要打印的变量。
|
40 |
|
41 | ### 实例
|
42 |
|
43 | ```shell
|
44 | /bin/echo Hello, world!
|
45 | ```
|
46 |
|
47 | 在上面的命令中,两个词(Hello 和 world!)作为单独的参数传递给 echo,并且 echo 按顺序打印它们,用空格分隔
|
48 |
|
49 | 下一个命令产生相同的输出:
|
50 |
|
51 | ```shell
|
52 | /bin/echo 'Hello, World!'
|
53 | ```
|
54 |
|
55 | 但是,与第一个示例不同,上述命令提供了单引号字符串 'Hello, world!' 作为一个单一的一个参数。
|
56 |
|
57 | 单引号将可靠地保护它免受 shell 解释,将特殊字符和转义序列逐字传递给 echo。
|
58 |
|
59 | 例如,在 `bash shell` 中,变量名前面有一个美元符号 ($)。 在下一个命令中,引号内的变量名按字面意思处理; 在引号之外,它被转换为它的值。
|
60 |
|
61 | ```shell
|
62 | /bin/echo 'The value of $PATH is' $PATH
|
63 | # The value of $PATH is
|
64 | # /home/hope/bin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
65 | ```
|
66 |
|
67 | 用echo命令打印带有色彩的文字:
|
68 |
|
69 | **文字色:**
|
70 |
|
71 | ```shell
|
72 | echo -e "\e[1;31mThis is red text\e[0m"
|
73 | This is red text
|
74 | ```
|
75 |
|
76 | * `\e[1;31m` 将颜色设置为红色
|
77 | * `\e[0m` 将颜色重新置回
|
78 |
|
79 | 颜色码:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37
|
80 |
|
81 | ```shell
|
82 | echo -e "\x1b[30;1m 0 黑色 \x1b[0m"\
|
83 | "\x1b[31;1m 1 红色 \x1b[0m"\
|
84 | "\x1b[32;1m 2 绿色 \x1b[0m"\
|
85 | "\x1b[33;1m 3 黄色 \x1b[0m"\
|
86 | "\x1b[34;1m 4 蓝色 \x1b[0m"\
|
87 | "\x1b[35;1m 5 洋红 \x1b[0m"\
|
88 | "\x1b[36;1m 6 青色 \x1b[0m"\
|
89 | "\x1b[37;1m 7 白色 \x1b[0m"
|
90 | ```
|
91 |
|
92 | **背景色** :
|
93 |
|
94 | ```shell
|
95 | echo -e "\e[1;42mGreed Background\e[0m"
|
96 | Greed Background
|
97 | ```
|
98 |
|
99 | 颜色码:重置=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,洋红=45,青色=46,白色=47
|
100 |
|
101 | **文字闪动:**
|
102 |
|
103 | ```shell
|
104 | echo -e "\033[37;31;5mMySQL Server Stop...\033[39;49;0m"
|
105 | ```
|
106 |
|
107 | 红色数字处还有其他数字参数:0 关闭所有属性、1 设置高亮度(加粗)、4 下划线、5 闪烁、7 反显、8 消隐
|
108 |
|
109 |
|
110 |
|
111 | **输出内容结尾不添加换行符**
|
112 |
|
113 | ```shell
|
114 | echo -n 'hello'
|
115 | ```
|