错误信息中英对照:
((: i=: syntax error: operand expected (error token is "=")
((: i=: 语法错误: 期待操作数 (错误符号是 "=")
错误源码:
#!/bin/bash
rangeStart=$1
rangeEnd=$2
PORT=0
function my {
for((i=$rangeStart; i<=$rangeEnd; i++)); do
PORT=$i
done
echo "$PORT"
}
my;
原因:shell 变量调用需要加 $,但是 for 的 (()) 中不需要
正确源码:
#!/bin/bash
rangeStart=$1
rangeEnd=$2
PORT=0
function my {
for ((i=rangeStart; i<=rangeEnd; i++)); do
PORT=$i
done
echo "$PORT"
}
my;