我需要在脚本中处理10个以上的参数。 我在第9个参数之后声明并分配如下。
param10=${10}
param11=${11}
param12=${12}
它在linux中运行良好,但在solaris中运行不正常。我得到了bad substitution
任何人都可以帮助我阅读10个以上的参数,这应该适用于solaris和linux。
答案 0 :(得分:3)
可能已过时,但根据this link:
Bourne shell仅支持位置参数$ 0到$ 9。 要访问参数10或更高,您必须使用“shift” 命令。 Shift将移动2美元到1美元,3美元到2美元等等。(0美元是名称 被调用的命令永远不会移动)。此外,你可以转移更多 而不是一次一个位置。例如,您可以使用$ 1到$ 9, 然后发出命令“shift 9”并处理变量10到19 再次使用变量$ 1到$ 9。