我可能只是有一个大脑屁,但我不能为我的生活弄清楚如何循环shell脚本中的数组,而不是bash。我确定答案是在某处已经在stackoverflow,但我找不到使用bash的方法。对于我的嵌入式目标系统bash目前不是一种选择。以下是我正在尝试执行的一个示例以及返回的错误。shell脚本中的数组,而不是Bash
#!/bin/sh
enable0=1
enable1=1
port=0
while [ ${port} -lt 2 ]; do
if [ ${enable${port}} -eq 1 ]
then
# do some stuff
fi
port=$((port + 1))
done
每当我运行这个脚本时,错误“Bad substitution”就会返回给if语句行。如果你们有任何想法,我将不胜感激。谢谢!
哪个发行版?或者,你的嵌入式系统中的shell是/ bin/sh? – 2014-09-29 02:33:13
我会马上查看一下,但它应该和debian中使用的shell一样。 – TheLastFuzzy 2014-09-29 02:36:22
'if'行有不平衡的括号和'-'和'eq'之间的空格,所以我会先解决这些问题。 – 2014-09-29 02:40:37