unix shell脚本中的[email protected]
是什么意思。例如:在Linux的脚本环境中解密变量
A__JOB="$CLASS [email protected]"
其中$类有我的Java类文件名。那么可能是什么意思
[email protected]
我做了什么? 我谷歌搜索:)但$ @似乎是复杂的查询红外或者我不知道如何搜索谷歌的特殊字符。
unix shell脚本中的[email protected]
是什么意思。例如:在Linux的脚本环境中解密变量
A__JOB="$CLASS [email protected]"
其中$类有我的Java类文件名。那么可能是什么意思
[email protected]
我做了什么? 我谷歌搜索:)但$ @似乎是复杂的查询红外或者我不知道如何搜索谷歌的特殊字符。
[email protected]
是传递的所有参数的值。
例如,如果传递:
./script A B C D
然后“$ @”将等于"A" "B" "C" "D"
所以看起来目的是过时传递给脚本直接将所有参数java程序。
从bash的手册:
@展开为位置参数,从1开始。当 扩展出现在双引号内时,每个参数 扩展为单独的单词。也就是说,“$ @”相当于“$ 1”“$ 2”...如果在 字中出现双引号扩展 ,则将第一个参数的扩展与原始单词的开头部分结合起来,并且 最后一个参数的扩展与原始单词的最后一部分结合在一起。当没有位置参数时,“$ @”和$ @将 扩展为空(即,它们被移除)。
更正您的示例,如您的报价中所示:'$ @'是特殊的,''@ @'''您的情况会扩展到'“A”“B”“C”“D”'。这与'$ *'不同,后者将扩展到'A B C D''。 – hyde 2013-05-14 06:31:43
您可能希望在脚本中引用*'$ @'。 – devnull 2013-05-14 06:26:48