Bash 的 comma operator 其实跟 C 语言的作用差不多,但还有几个特别有意思的用法:
1、依次计算用 comma operator 链接的几个表达式,但只取最后一个表达式的值,代码如下:
let "t2 = (( a = 9, 15 / 3))"
echo $t2
此时 a 的值为 9, 但 echo 语句返回值却是后一个表达式的值,即 5
2、The comma operator can also concatenate strings 。代码如下:
for file in /{,usr/}bin*calc
表示在 /bin 或者 /usr/bin 里的所有以 calc 结尾的文件。
又或者:
echo {,Hello}World!
会返回 World 和 Hello World!。
3、Lowercase conversion in parameter substitution (added in version 4 of Bash)
a="ATest"
echo ${a,}
echo ${a,,}
第一个 echo 语句会使字符串的首字母小写,即输出 aTest,
第二个 echo 语句会使整个字符串均小写,即输出 atest。