Bash里,不要把叹号和双引号连在一起

你觉得,下面这条语句会得到怎样的结果?

echo " Source cluster mounted successfully!"


答案:

image

意思就是说,当叹号和双引号连在一起的时候,双引号的意义发生了变化,于是bash就在等待你输入下一个引号了。


分开二者,就会得到看上去我们原本想要得到的结果了。

image


叹号在Bash中有特别的意义,叫做history expansion(历史扩展)。历史扩展(History Expansion)又被称为Bang(!)命令,历史扩展是bash将历史命令转换到可执行命令的过程。可以查看参考资料中的例子来理解一下。


参考资料

=============

http://blog.useasp.net/archive/2014/06/03/improve-efficiency-with-bash-history-expansion.aspx

原文地址:https://www.cnblogs.com/awpatp/p/13304218.html