Linux echo详解:输出命令

学习一种编程语言,写的第一个脚本都是打印"Hello world!",我们也写一个"Hello world!"脚本用来学习一下 Shell 脚本的运行方式。

在写脚本之前,我们需要学习一下 Linux 的打印命令 echo。该命令格式如下:

[root@localhost ~]# echo [选项] [输出内容]

选项:

  • -e:支持反斜线控制的字符转换(具体参见表 1)
  • -n:取消输出后行末的换行符号(内容输出后不换行)

其实 echo 命令非常简单,命令的输出内容如果没有特殊含义,则原内容输出到屏幕;如果输出内容有特殊含义,则输出打印其含义。

【例 1】

[root@localhost ~]# echo "c.biancheng.net"
#echo的内容就会打印到屏幕上
c.biancheng.net
[root@localhost ~]#

echo命令就是这么简单,输出什么内容,这个内容就会打印到屏幕上。

【例 2】

[root@localhost ~]# echo -n "c.biancheng.net"
c.biancheng.net[root@localhost ~]#
#如果加入了 "-n"选项,则在输出内容结束后,不会换行,直接显示新行的提示符

在 echo 命令中如果使用了"-e"选项,则可以支持控制字符,如表 1 所示。

表 1 控制字符
控制字符 作 用
// 输出/本身
/a 输出警告音
/b 退格键,也就是向左删除键
/c 取消输出行末的换行符。和“-n”选项一致
/e Esc键
/f 换页符
/n 换行符
/r 回车键
/t 制表符,也就是Tab键
/v 垂直制表符
/Onnn 按照八进制 ASCII 码表输出字符。其中 0 为数字 0,nnn 是三位八进制数
/xhh 按照十六进制 ASCH 码表输出字符。其中 hh 是两位十六进制数

【例 3】

[root@localhost ~]# echo -e "// /a"
/
#输出 /,同时会在系统音响中输出一声警告音

在这个例子中,echo 命令会输 /。如果不像"//"这样写,那么因为 / 有特殊含义,所以不会输出。

【例 4】

[root@localhost ~]# echo -e "ab/bc"
ac
#在这个输出中,在 b 的左侧有"/b",所以输出时只有 ac

【例 5】

[root@localhost ~]# echo -e "a/tb/tc/nd/te/tf"
a b c
d e f
#因为加入了制表符"/t"和换行符"/n",所以会按照格式输出

【例 6】

[root@localhost ~]# echo -e "/0141/t/0142/t/0143/n/0144/t/0145/t/0146"
a b c
d e f
#还是会输出上面的内容,不过是按照制ASCII码输出的

也就是说,141 这个八制数在 ASCII 码中代表小写的"a",其他的以此类推。

【例 7】

[root@localhost ~]# echo -e "/x61/t/x62/t/x63/n/x64/t/x65/t/x66"
a b c
d e f
#如果按照十六进制ASCII码同样可以输出

echo命令还可以输出一些比较有意思的内容。

【例 8】

[root@localhost ~]# echo -e "e[1;31m abed /e[0m"

这条命令会把 abcd 按照红色输出。解释一下这个命令:/e[1 是标准格式,代表颜色输出开始,/e[0m 代表颜色输出结束,31m 定义字体颜色是红色。

echo 命令能够识别的颜色如下:30m=黑色,31m=红色,32m=绿色,33m=黄色,34m=蓝色,35m=洋红,36m=青色,37m=白色。

【例 9】

[root@localhost ~]# echo -e "e[1;42m abed /e[0m"

这条命令会给 abcd 加入一个绿色的背景。echo 命令可以使用的背景颜色如下:40m=黑色,41m=红色,42m=绿色,43m=黄色,44m=蓝色,45m=洋红,46m=青色,47m=白色。

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/21884.html

(0)
上一篇 2021年7月20日
下一篇 2021年7月20日

相关推荐

发表回复

登录后才能评论