Linux系统之echo命令的基本使用
【摘要】 Linux系统之echo命令的基本使用
一、echo命令介绍
- echo命令简介
echo
命令是一个用于在终端中显示一行文本的命令。它通常用于脚本和命令行操作中,可以用来显示变量的值、输出错误消息、创建文本文件等。
二、echo命令的使用帮助
2.1 echo命令的help帮助信息
执行以下命令,查看echo命令的帮助信息。
[root@openEuler-test ~]# help echo
echo: echo [-neE] [arg ...]
Write arguments to the standard output.
Display the ARGs, separated by a single space character and followed by a
newline, on the standard output.
Options:
-n do not append a newline
-e enable interpretation of the following backslash escapes
-E explicitly suppress interpretation of backslash escapes
`echo' interprets the following backslash-escaped characters:
\a alert (bell)
\b backspace
\c suppress further output
\e escape character
\E escape character
\f form feed
\n new line
\r carriage return
\t horizontal tab
\v vertical tab
\\ backslash
\0nnn the character whose ASCII code is NNN (octal). NNN can be
0 to 3 octal digits
\xHH the eight-bit character whose value is HH (hexadecimal). HH
can be one or two hex digits
\uHHHH the Unicode character whose value is the hexadecimal value HHHH.
HHHH can be one to four hex digits.
\UHHHHHHHH the Unicode character whose value is the hexadecimal value
HHHHHHHH. HHHHHHHH can be one to eight hex digits.
Exit Status:
Returns success unless a write error occurs.
2.2 echo命令的语法解释
选项 | 描述 |
---|---|
-n | 不在输出末尾附加换行符。 |
-e | 启用对反斜杠转义序列的解释。 |
-E | 明确禁止对反斜杠转义序列的解释。(默认) |
echo
命令解释的反斜杠转义序列:
转义序列 | 描述 |
---|---|
\a | 警告(bell)。 |
\b | 退格(backspace)。 |
\c | 不产生后续输出。 |
\e | 逃逸字符。 |
\E | 逃逸字符。 |
\f | 换页(form feed)。 |
\n | 新行(newline)。 |
\r | 回车(carriage return)。 |
\t | 水平制表符(tab)。 |
\v | 垂直制表符(vertical tab)。 |
\ | 反斜杠(backslash)。 |
\0nnn | ASCII 码为 NNN(八进制)的字符。NNN 可以是 0 到 3 位的八进制数字。 |
\xHH | 值为 HH(十六进制)的八位字符。HH 可以是一位或两位的十六进制数字。 |
\uHHHH | 值为 HHHH(十六进制)的 Unicode 字符。HHHH 可以是一位到四位的十六进制数字。 |
\UHHHHHHHH | 值为 HHHHHHHH(十六进制)的 Unicode 字符。HHHHHHHH 可以是一位到八位的十六进制数字。 |
三、echo命令的基本使用
3.1 显示普通文本
直接使用echo命令,输出文本信息。
[root@openEuler-test ~]# echo "I have a dream !"
I have a dream !
3.2 不换行输出
默认情况下,echo命令会在输出文本后自动换行。如果不想换行,可以使用-n选项。
vim aa,sh
#!/bin/bash
echo -n "Today is "
date +%A
[root@openEuler-test ~]# sh aa.sh
Today is Friday
3.3 显示带有转义字符的文本
使用-e选项,显示带有转义字符的文本。
[root@openEuler-test ~]# echo -e "hello \nworld !"
hello
world !
3.4 输出变量
- 定义变量
[root@openEuler-test ~]# echo "AAA $AAA"
AAA jeven
3.5 重定向文件
使用echo命令重定向文件
[root@openEuler-test ~]# echo hello > test.txt
[root@openEuler-test ~]# cat test.txt
hello
配合tee命令快速写入多行内容到文件
cat << EOF | tee test01.txt
AWESAA01
LOWWW122
OOP123
EOF
3.6 禁止使用转义符
使用-E选项, 禁止使用转义符。
[root@openEuler-test ~]# echo -E "hello \nworld !"
hello \nworld !
3.7 使用for循环打印
用for循环打印数字序列
[root@openEuler-test ~]# for i in {1..10}; do echo $i; done
1
2
3
4
5
6
7
8
9
10
3.8 打印带颜色的文本
打印带颜色的文本
[root@openEuler-test ~]# echo -e "\e[1;36mI have a dream ! \e[0m"
I have a dream !
颜色码:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37
四、注意事项
-
echo
命令默认会在输出末尾添加一个新行。 -
使用
-n
选项可以避免在输出末尾添加新行。 -
使用
-e
选项可以启用对转义序列的解释。 -
单引号包围文本可以防止 shell 对变量进行扩展。
-
双引号允许变量和命令替换在输出中生效。
-
使用 ANSI 转义序列可以在终端中输出带颜色的文本。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)