之后相当于将数组a的每一个元素加上双引号之后形成一个列表。
备注:
(a)这个例子解释了为什么数组b有三个元素。”Linux Bash”这个字符串在a中作为一个元素,在b中还是作为一个元素看待。
在bash shell中,把”${a[*]}”展开之后相当于将数组a的每一个元素形成一个列表之后再整体上加双引号,这样自然就只有一个元素了。
备注:
(a)这个例子解释了为什么数组c只有一个元素。”Butianyun Linux Bash Shell”这个字符串整体在c中作为一个元素看待。
三、实例。
理解@和*的区别有什么价值呢?下面讨论在for循环中的应用。
备注:
(a)数组a本身只有三个元素。第二个元素包含空格。
(b)在不加双引号时,不管使用@还是*,循环体都是执行四次。
(c)数组a的第二个元素”Linux Bash”被拆分成两个独立的词语。
备注:
(a)在使用@并且加了双引号之后,循环体只执行了三次。数组a的第二个元素并没有被拆分。
加双引号之后,相当于数组a的每一个元素加上双引号之后形成了一个列表。
备注:
(a)在使用*并且加了双引号之后,循环体只执行了一次。数组a的所有元素形成一个列表之后再加双引号,相当于数组a的所有元素合并成了一个整体。
下载Linux Bash Shell免费教程PDF文件:
点击此处下载 补天云C_CPP_QT工程师的Linux_Bash_Shell免费教程
|