${parameter:-word}
${parameter:=word}
${parameter:?word}
${parameter:+word}
${parameter:offset}
${parameter:offset:length}
${!prefix*}
${#parameter}
${parameter#word}
${parameter##word}
${parameter%word}
${parameter%%word}
${parameter/pattern/string}
${parameter//pattern/string}
这种用法,谢谢你回答我。
答案 0 :(得分:0)
如果您只是打开一个终端窗口并输入man bash
,您就可以在Parameter Expansion
下找到所有这些内容。
事实上,由于这些完全手册页所包含的形式(使用parameter
和word
),并且按照相同的顺序,我拥有它们我很惊讶你已经不知道了。
一个例子是${parameter:-word}
,其中说明:
使用默认值。如果
parameter
未设置或为null,则word
的扩展将被替换。否则,parameter
的值将被替换。
因此,对于这种情况,${xyzzy:-plugh}
会为您提供${xyzzy}
的值(如果已设置),否则您将获得文字"plugh"
。
我不会详细介绍它们,bash
手册页详细解释了这一点。 “教一个人钓鱼......”以及所有这些东西。
答案 1 :(得分:0)
参数扩展
参数扩展的格式如下:
${expression}
其中表达式由匹配的“}”之前的所有字符组成。在确定匹配的'}'时,不应检查由反斜杠或带引号的字符串中的任何'}'以及嵌入式算术扩展,命令替换和变量扩展中的字符。
参数扩展的最简单形式是:
${parameter}
有关详细信息,请参阅:
http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html