Bash 脚本:如何在 Linux Shell 上输出和格式化文本
Bash 脚本非常流行,也是最简单的脚本语言之一。与任何编程或脚本语言一样,您有时会向终端输出文本。这在许多情况下都可能发生,例如,当您想要打印文件的内容或检查变量的值时。程序员还可以通过将变量值打印到控制台来调试应用程序。在我们进入 Bash 脚本编写(这将是另一个教程)之前,让我们看一下在终端中输出文本的各种方法。
Echo 是您需要了解的将文本输出到终端的最重要的命令。顾名思义,Echo 将数字或字符串打印到终端的标准输出。它还具有许多选项,如下表所列。
- Options
定义
- -n
不打印尾随换行符
- -E
禁用反斜杠转义字符的解释
- -e
启用反斜杠转义的解释
- \a
警报
- \b
退格键
- \c
抑制尾随换行符
- \e
逃脱
- \f
换页
- \\
反斜杠
- \n
新队
- \r
回车符
- \t
水平制表符
- \v
垂直标签
根据Linux文档,以下是echo命令的语法。
echo [option(s)][string(s)]
现在,我们将看到在终端上输出文本的不同方式。
将文本发送到标准输出
要在终端上输出任何字符串、数字或文本,请键入以下命令并按 Enter 键。
echo "Hello World"
终端上将显示以下输出
打印变量
让我们声明一个变量并在终端上打印它的值。假设 x 是一个变量,我们已将其初始化为 100。
x=100
现在,我们将在终端上输出变量的值。
echo x
终端上将打印 100。同样,您也可以将字符串存储在变量中并将其输出到终端上。
尝试一下,让我们知道这对您来说是否容易。
删除单词之间的空格
这是我最喜欢的 echo 命令选项之一,因为它删除了句子中不同单词之间的所有空格并将它们混在一起。在此功能中,我们将使用表 1 中提到的两个选项。
echo -e "Hello \bmy \bname \bis \bjohn \bDoe"
正如您从上面的示例中看到的,我们启用了反斜杠转义的解释以及添加退格键。显示了以下输出。
换行输出字
当您使用 bash 脚本时,echo 的这个选项非常方便。大多数情况下,完成后您需要移至下一行。因此,这是为此使用的最佳选择。
echo -e "Hello \nmy \nname \nis \nJohn \nDoe"
输出将在单独的行中显示每个单词,如下面的屏幕截图所示。
带声音输出文本
这是一个输出带有铃声或警报的文本的简单选项。为此,请键入以下命令。
echo -e "Hello \amy name is John Doe"
确保系统的音量足够高,以便您可以听到在终端上输出文本时发出的小铃声。
删除尾随新行
echo 的另一个选项是删除尾随的换行符,以便所有内容都输出在同一行上。为此,我们使用“\c”选项,如下图所示。
echo -e "Hello my name \cis John Doe"
显示以下输出
在输出中添加回车符
要在输出中添加特定的回车符,我们有“\r”选项。
echo -e "Hello my name \ris John Doe"
终端上将显示以下输出。
在输出中使用制表符
在终端上打印输出时,您还可以添加水平和垂直选项卡。这些对于更干净的输出非常有用。要添加水平制表符,您必须添加“\t”,对于垂直制表符,请添加“\v”。我们将为每一个做一个样本,然后再做一个组合样本。
echo -e "Hello my name \tis John Doe"
该命令的输出将如下所示
echo -e "Hello my name \vis John Doe"
该命令的输出将如下所示
现在我们将把这个例子结合到我们拥有的一组句子中。
echo -e "Hello my name \vis John Doe. Hello! My name is \tJane Doe"
终端上将打印以下内容。
这些都是可用于在终端中打印文本的选项。这是一个需要学习的重要功能,因为当您开始使用 bash 脚本时它将为您提供帮助。确保使用每个选项并勤奋练习。让我们知道本教程是否帮助您解决了问题。