根据我在tldp.org上所读到的,双括号构造(( ... ))
允许您引用不带$
前缀的bash变量。但是,在尝试引用参数计数变量$#
时,脚本拒绝使用
bash: ((: i < # : syntax error: operand expected (error token is "# ")
奇怪的是,当哈希加前缀时,脚本可以正常工作。
供您参考,这是工作代码:
fun(){
i=0
while (( i < $# )); do
echo $1;
shift
done
}
我的问题是:如何知道包含前缀的时间是否正确以及何时不包含?