$@
unix shell 脚本中的含义是什么。例如:
A__JOB="$CLASS $@"
其中 $CLASS 有我的 java 类文件名。那么这可能是什么意思
$@.
我做了什么?我用谷歌搜索 :) 但 $@ 似乎是对 ir 的复杂查询,或者我可能不知道如何在谷歌搜索特殊字符。
$@
是传递的所有参数的值。
例如,如果您通过:
./script A B C D
那么“$@”将等于"A" "B" "C" "D"
所以看起来目的是将所有传递给脚本的参数直接传递给java程序。
来自 bash 手册:
@ 展开为位置参数,从一开始。当扩展出现在双引号内时,每个参数都扩展为一个单独的单词。即 "$@" 等价于 "$1" "$2" ... 如果双引号展开出现在一个单词中,则第一个参数的展开与原词的开头部分连接,展开的最后一个参数与原始单词的最后一部分连接。当没有位置参数时,"$@" 和 $@ 扩展为空(即,它们被删除)。