echo
命令是Linux中最基本和最常用的命令之一。传递参数给echo
将打印到标准输出。echo
通常在shell脚本中用于打印消息或输出其他命令的结果。
echo
是一个内置shell命令。echo的行为与其他流行的shell一样,如Zsh和Ksh。但它们的行为与shell之间略有不同。
还有一个独立的/usr/bin/echo
程序,但通常,shell内置版本将优先。我们将介绍Bash内置版本的echo
。
这是echo
命令的语法echo [-neE] [ARGUMENTS]
。使用-n
选项时,将禁止尾随换行符。如果指定-e
选项,则将解释以下反斜杠转义字符:
\\
打印反斜杠字符。\a
警报BEL。\b
打印退格字符。\c
抑制任何进一步的输出。\e
打印转义字符。
\f
打印换页符。\n
打印换行。\r
打印回车。\t
打印水平选项卡。\v
打印垂直选项卡。-E
选项禁用转义字符的解释。这是默认值。
使用echo
命令时需要考虑几点。在将参数传递给echo
命令之前,shell将替换所有变量,通配符和特殊字符。
传递给echo
的参数使用双引号或单引号括起来。虽然没有必要,但是一种很好的编程习惯。
使用单引号时''
,将保留引号中包含的每个字符的字面值。变量和命令不会被解释。
echo示例
echo Hello, World!
这将在标准输出上打印一行Hello, World!文本。这将是你如何使用echo的最简单入门。
如需要打印双引号,请将其括在单引号内,例如命令echo 'Hello "myfreax"'
。
另一种方式是使用反斜杠字符对其进行转义。例如命令echo "Hello \"myfreax\""
。
如果需要打印单引号,请将其括在双引号内,例如命令echo "I'm a Linux user."
。
另一种方式是使用ANSI-C引号。例如命令echo $'I'm a Linux user.'
。
echo
命令可以与模式匹配字符一起使用,例如通配符。echo The PHP files are: *.php
命令将打印当前目录中所有以.php
作为扩展名的文件名称。
重定向到文件与打印输出到屏幕相反,您可以将echo的输出,使用>
,>>
重定向操作符重定向到一个文件中。例如命令echo -e 'g.\nSocrates' >> /tmp/file.txt
。
如果file.txt不存在,该命令将创建它。当使用>
该文件时将被覆盖,而>>
将输出追加到该文件。你可以使用使cat
命令验证与查看文件的内容cat /tmp/file.txt
。
echo
也可以打印变量。例如命令echo $USER
将打印当前登录用户的名称。$USER
是一个保存用户名的shell变量。
打印命令的输出,可使用$(command)
表达式在echo
命令参数中包含命令输出。例如命令echo "The date is: $(date +%D)"
将打印当前日期。
echo Hello, World! #最简单的用法
echo 'Hello "myfreax"' #打印双引号,等价命令 echo "Hello \"myfreax\""
echo "I'm a Linux user." #打印单引号,等价命令 echo $'I'm a Linux user.'
echo The PHP files are: *.php #使用通配符
echo -e 'g.\nSocrates' >> /tmp/file.txt #重定向到文件
echo $USER #打印变量
echo "The date is: $(date +%D)" #打印另一个命令的输出
以彩色进行echo打印
你可使用ANSI转义序列更改前景色和背景色或设置下划线和粗体等文本属性。
echo -e "\033[1;37mWHITE"
打印白色,echo -e "\033[0;30mBLACK"
打印黑色。echo -e "\033[0;34mBLUE"
打印蓝色。echo -e "\033[0;32mGREEN"
打印绿色。
echo -e "\033[0;36mCYAN"
打印青蓝色。echo -e "\033[0;31mRED"
打印红色。echo -e "\033[0;35mPURPLE"
打印紫色。
echo -e "\033[0;33mYELLOW"
打印黄色。echo -e "\033[1;30mGRAY"
打印灰色。
结论
到目前为止,您应该很好地理解echo
命令的工作方式。如果您有任何问题或反馈,请随时发表评论