echo命令是Linux日常任务中使用最广泛的命令之一。echo命令是一个内置的命令行工具,可将文本或字符串打印到标准输出或将输出重定向到文件。此命令通常用于bashshell或其他shell以打印命令的输出。echo命令也常用于bashshell脚本中。基本语法$echo[option][string]在本指南中,我们将通过16个实际示例来解释Linuxecho命令。(1)在终端上显示一条简单的消息要使用echo命令在终端上打印一条简单的文本消息,运行命令:$echoHelloGuys(2)使用echo命令打印出一个变量的值假设你有初始化了一个变量x,并给它赋值100,如下所示$x=100可以通过在变量名前加一个美元符号来打印它的值,如图所示$echox的值为$x(3)打印一行包含双引号的文本要使用echo命令打印包含双引号的文本行,只需将包含双引号的短语用单引号引起来。$echoHelloguyswelcometo'"Linuxtechi"'(4)显示包含单引号的一行文本如果要打印包含单引号的行,将包含单引号的短语用双引号括起来,如下所示$echoHey,"We're'Linuxtechi,一个社区驱动的站点。(5)将echo命令输出重定向到文件要将echo命令输出重定向到文件而不是将其打印到屏幕,请使用大于(>)和双大于(>>)运算符。当您使用大于(>)运算符时,文件将被覆盖。如果该文件不存在,将创建它。$echo大家好,欢迎来到Linuxtechi>greetings.txt双大于运算符(>>)将文本追加到文件中。例如为/etc/host(s)文件添加一个条目$echo192.168.2.100web-server-01>>/etc/host(s)(6)使用echo命令匹配同一个文件即可使用带有通配符的echo命令返回相同的文件,即具有相同文件扩展名的文件。例如,要打印所有扩展名为.txt的文本文件,请运行以下命令。$echo*.txt(7)列出当前目录下的所有文件和文件夹。echo命令可以像ls命令一样使用通配符列出当前目录下的所有文件和文件夹,如下所示:$echo*(8)使用echo命令创建新行使用反斜杠解释器选项-e,你可以操纵线条在输出中的显示方式。例如,要打印一个新行,请使用\n转义字符选项,如下所示$echo-e"Welcome\nto\nLinuxtechi\ncommunity"(9)除了创建新的Beyond行之外,还在句子中的单词之间创建制表符空格,您可以使用\t或tab选项来增加句子中单词之间的间距。$echo-e"Welcome\tto\tLinuxtechi\tcommunity"(10)在echo命令中合并换行符和制表符间距您可以同时组合\n和\t选项,如图所示$echo-e"\n\tWelcome\n\tto\n\tLinuxtechi\n\tcommunity"(11)在echo命令输出中创建垂直制表符\v选项使您能够创建如图所示的垂直制表符$echo-e"Welcome\vto\vLinuxtechi\vtcommunity"(12)在echo命令中合并换行符和垂直制表符空格此外,您可以试验并组合\n和\v选项,如下所示$echo-e"Welcome\n\vto\n\vLinuxtechi\n\vtcommunity"(13)使用回车返回选项\r选项将省略前面的文本。例如,下面命令的输出省略了前2个单词。$echo-e"Welcometo\rLinuxtechicommunity"(14)带有截断文本的echo命令输出要抑制任何进一步的输出并继续而不转到下一行,请使用'\c'选项,如下所示:\c选项抑制任何进一步的输出输出不继续下一行,如图所示$echo-eWelcometoLinuxtechi\ccommunity(15)使用echo命令去除文本字符串中的所有空格在echo中使用'\b'选项和-e选项命令去除文本字符串中的所有空格,示例如下:使用\b选项和-e选项去除文本字符串中的所有空格,如下所示$echo-e"Welcome\bto\bLinux\bCommunity"WelcometoLinuxCommunity$(16)在bashshell脚本中使用echo命令正如我们已经说过的,echo命令经常用在bashshell脚本中。以下是在shell脚本中使用echo命令的示例$catecho-bash.sh#!/bin/bash#Echo命令在Scriptos_version=$(grep-i"PRETTY_NAME"/etc/os-release|awk-F'=''{print$2}'|sed's/"//g')no_cpus=$(lscpu|grep'^CPU(s):'|awk-F":"'{print$2}'|sed"s/^[\t]*//")total_mem=$(grepMemTotal/proc/meminfo|awk-F":"'{print$2}'|sed"s/^[\t]*//")echo'OSVersion:'$os_versionecho'CPU个数:'$no_cpusecho'TotalMemory:'$total_mem$执行上面的脚本,输出如下$bashecho-bash.shOSVersion:CentOSLinux7(Core)CPU数量:4TotalMemory:8008968kB$我的开源项目course-tencent-cloud(酷瓜云课堂-gitee仓库)course-tencent-cloud(酷瓜云课堂-github仓库)
