Linux 为什么for循环数组不能在bash语言中工作?
我需要运行这段代码,但代码不接受for循环,似乎数组中的问题不等于0在shell脚本中不起作用Linux 为什么for循环数组不能在bash语言中工作?,linux,bash,shell,unix,script,Linux,Bash,Shell,Unix,Script,我需要运行这段代码,但代码不接受for循环,似乎数组中的问题不等于0在shell脚本中不起作用 for((i=0; i<=nf && ff[i]!=0; i++)) do echo " $i ${f[i]} ${ff[i]} ${b[ff[i]]} ${frag[i]}" done for((i=0;ifor循环似乎工作正常: nf=3 ff=(1 2 3) b=("a" "b"
for((i=0; i<=nf && ff[i]!=0; i++))
do
echo " $i ${f[i]} ${ff[i]} ${b[ff[i]]} ${frag[i]}"
done
for((i=0;ifor循环似乎工作正常:
nf=3
ff=(1 2 3)
b=("a" "b" "c" "d")
frag=("?" "!" "%")
for((i=0; i<=nf && ff[i]!=0; i++))
do
echo " $i ${f[i]} ${ff[i]} ${b[ff[i]]} ${frag[i]}"
done
#> 0 1 b ?
#> 1 2 c !
#> 2 3 d %
nf=3
ff=(1 2 3)
b=(“a”“b”“c”“d”)
frag=(“?”!“%”)
对于((i=0;i 0 1 b?
#>12C!
#>2.3 d%
您遇到了什么问题?您得到了什么输出?您确定您的数组/变量设置正确吗?您确定您使用的是bash(即不是sh)?当我运行此循环时,没有显示输出,但如果循环中没有数组条件,则其显示的输出没有精确的结果。是否有其他方法将此数组条件写入此循环中?Hi@hibluner-您接受了此答案-您找到问题了吗?请发布一个可复制的示例。您的代码遗漏了首字母i为了安全起见,也可以发布bash的版本(在进入循环之前执行echo$bash\u version
)。