【发布时间】:2014-09-29 02:32:09
【问题描述】:
我可能只是在放屁,但我终其一生都无法弄清楚如何在 shell 脚本中循环遍历数组,而不是 bash。我确定答案已经在某个地方的 stackoverflow 上,但我找不到不使用 bash 的方法。对于我的嵌入式目标系统,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
每当我运行此脚本时,都会返回错误“错误替换”以用于 if 语句。如果你们有任何想法,我将不胜感激。谢谢!
【问题讨论】:
-
哪个发行版?或者,在您的嵌入式系统中,
/bin/sh是哪个 shell? -
我稍后会确定,但它应该与 debian 中使用的 shell 相同。
-
if行的括号不平衡,-和eq之间有一个空格,所以我会先解决这些问题。 -
其实我错了。系统指向busybox,然后它转身指向灰烬的变化。对于那个很抱歉。这个平台还是新手
-
哎呀,好抓雷!那是仅在 stackoverflow 上的错误类型,而不是在我的实际脚本中。