在这篇文章中,我们讨论了echo命令的基本用途,以及一些涉及它与其他Linux命令相结合以实现目标的用途。
目录.
- 简介.
- 语法.
- 命令.
- 总结.
- 参考文献.
介绍
echo是一个Unix/Linux工具,用于显示作为参数传递给他们的文本或字符串。它可以与C语言中的printf或C++中的cout相比,
通常用于shell脚本和批处理文件。
Linux中的Echo命令经常被软件开发者使用:
- 检查环境变量中设置的值。
语法
语法如下:
echo [SHORT-OPTION]... [STRING]...
echo LONG-OPTION
它的各种选项有:
-n,避免输出带有尾部的新行;
-e,能够解释反斜线转义序列;
-E,禁止解释反斜线转义序列;
\
a,用于警报。
\b,用于退格。
c,在它之后,没有进一步的输出。
n,用于新的一行。
t,用于水平制表符。
v,用于垂直制表符。
r,用于回车。
e,转义字符相当于按下转义按钮。
命令
一个简单的例子是向终端打印一个文本。
echo "a random text here"
文本*'a random text'*将被打印到终端。
我们还可以使用带有通配符*的echo来打印出当前工作目录下的所有文件和目录,如下所示。
echo *
我们还可以打印出所有的*.pdf*文件,如下所示。
echo *.pdf
或者所有以字母D开头的文件或目录。
echo D*
假设我们有一个变量a,其值为8,即a=8
a=8
为了用echo打印它的值,我们写道。
echo 'The number $a is less than 10'
其输出结果是
The number 8 is less than 10
PATH是一个环境变量,它告诉shell在响应用户发出的命令时要搜索哪些目录中的可执行文件。
echo $PATH
要打印主路径。
echo ~
为了产生警报声,我们使用*/a*。
echo -e "\aALERT"
要删除文本中的所有空格,我们使用*-b选项和转义解释器-e*,如下。
echo -e 'This \bis \ba \brandom \bbackspaced \btext.'
输出结果是。
Thisisarandombackspacedtext.
要打印带有单引号或双引号等字符的文本。
echo 'There\'s a quote in this text.'
或
echo 'The \"echo\" command prints text.'
要在新的一行中打印文本,我们使用*-n选项和转义解释器-e*。
echo -e 'This is \na random \nnewline text.'
其输出结果如下。
This is
a random
newline text
我们还可以在输出中使用制表符,如下。
echo -e 'This \tis \ta \trandom \ttabbed \ttext.'
的输出。
This is a random tabbed text.
选项*-v*o]打印文本时使用垂直制表符。
echo -e 'This is \va random \vvertical text.'
的输出。
This is
a random
vertical text
为了压制尾部的新行,我们使用\c选项。
echo -e 'This is a random backspaced text \c the supressed text is here'
输出。
This is a random backspaced text
我们还可以使用\r 选项指定一个回车,以省略前面的文字。
echo -e 'This text is not printed \r After the carriage return'
的输出。
After the carriage return
Echo可以与重定向一起使用,也就是说,将输出发送到一个文件。
echo * > dirs.txt
echo的输出是当前工作目录下的所有文件和目录,被写入dirs.txt文件。
为了将echo的输出附加到一个文件中,我们使用*>>*重定向字符。
echo * >> dirs.txt
Echo也可以用来打印一个命令的输出,例如
echo $(ping 8.8.8.8 -c2)
我们还可以生成一个字符串的列表,例如范围。
echo {1..10}
打印从1到10的所有数值,
或
echo {a..z}
来打印从a到z的所有字母。
我们还可以通过使用ANSI转义序列来打印彩色文本。
一个例子
echo -e "\033[0;33mpurple text"
或黑色文本。
echo -e "\033[0;30mblack text"
摘要
Echo重复我们告诉它的内容,就像字面上的 "echo "一样。
我们可以单独使用它,也可以将它与其他命令结合起来,产生所需的输出。