我正在尝试在Bash中将参数列表("$@"
)中排除$1
和任何以破折号开头的值,追加到数组中。
以下是我的当前代码,但它无法正常运行:
BuildTypeList=("armv7" "armv6")
BuildTypeLen=${#BuildTypeList[*]}
while [ "$2" != "-*" -a "$#" -gt 0 ]; do
BuildTypeList["$BuildTypeLen"] = "$2"
BuildTypeLen=${#BuildTypeList[*]}
shift
done
我的目的是在运行时添加内容到BuildTypeList
,而不是将其内容静态定义为源代码的一部分。
foo=bar
是 shell 中的一个赋值;而foo = bar
则不是。 - Charles Duffy[ foo!= bar ]
不是通配符表达式;需要使用bash扩展[[ ]]
。) - Charles Duffy