首页 » 信息技术 »

Bash echo命令

2019年2月18日 / 21次阅读
Bash

  • 打开支付宝,搜索“ 529018372 ”,领取专属红包!每日支付每日领。

Bash的echo命令很常用,不过有些细节还是要注意理解,本文通过代码实例来说明。

[xinlin@ifos ~]$ echo Iamme
Iamme
[xinlin@ifos ~]$ echo i am me
i am me
[xinlin@ifos ~]$ echo i am       me
i am me

echo可以接一个没有空格的字符串;

echo命令也可以接有多个参数,显示出来后,每个参数之间有一个空格;

命令参数之间的空格可以是多个。

命令参数之间多个空格,是Bash接收命令的一个共性,多个空格都当成一个空格来处理,如cat命令:

[xinlin@ifos ~]$ ll
total 12
-rw-rw-r--. 1 xinlin xinlin 13 Feb 17 20:05 t2.sh
-rw-rw-r--. 1 xinlin xinlin 22 Feb 17 20:05 t.sh
-rw-rw-r--. 1 xinlin xinlin 43 Feb 17 19:18 t.txt
[xinlin@ifos ~]$ cat t.sh         t2.sh
ftest(){
return 123
}
ktest(){
:
}

再来一个示例:

[xinlin@ifos ~]$ str='i am a wide        string'
[xinlin@ifos ~]$ echo $str
i am a wide string
[xinlin@ifos ~]$ echo "$str"
i am a wide        string

str变量的内容是不包含前后的引号的,不管是单引号还是双引号,引号不是变量的内容。

因此,echo $str,就是直接将str的内容替换,然后echo,效果就成了每个单词之间只有一个空格的显示。

而,echo "$str",将str内容替换后,再包上双引号(这里不能是单引号哦...),双引号和之间的内容就成了一个整体,所以里面的空格就全部显示出来了。

 

Bash接收的是命令,命令与参数之间用空格分开,多个空格当成一个空格。关于空格,说一下read命令;

read命令会set一个变量,会把输入时前后的空格全部自动去掉,但是中间的空格会保留,就像上面的示例:

[xinlin@ifos ~]$ echo -n 'input:';read jkk
input:a   b   c
[xinlin@ifos ~]$ echo ${jkk}
a b c
[xinlin@ifos ~]$ echo "${jkk}"
a   b   c

本文链接:http://www.maixj.net/ict/bash-echo-20208

相关文章

评论是美德

《Bash echo命令》有1条评论

  • 麦新杰

    简单的文本输出用echo,复杂格式的输出用printf。 []


前一篇:
后一篇:

栏目精选

云上小悟,麦新杰的独立博客

Ctrl+D 收藏本页

栏目


©Copyright 麦新杰 Since 2014 云上小悟独立博客版权所有 备案号:苏ICP备14045477号-1。云上小悟网站部分内容来源于网络,转载目的是为了整合信息,收藏学习,服务大家,有些转载内容也难以判断是否有侵权问题,如果侵犯了您的权益,请及时联系站长,我会立即删除。

网站二维码
go to top