我目前正在awkbash 脚本中编写脚本。我的一个论点需要拆分和循环。例如:对于一个参数,1234我需要按写入的顺序循环遍历每个数字。所以,2413不等价。
我曾经split创建一个数组,然后创建一个for-in循环来循环遍历数组。我以为它会按顺序循环,但事实并非如此。
我的代码如下:
split(cols,toShow,"")
for (c in toShow)
printf "%s\n",c
cols使用选项传递给awk命令-v并给出以下输出:
4
1
2
3
在测试了几次之后,使用不同长度的参数并使用数字和字母,for循环似乎从数组的第 4 个元素开始,按顺序循环到最后,然后循环遍历元素 1 到 3,而不是预期从元素 1 开始并循环到结束。
无论如何要改变行为还是我做错了什么?
编辑为了澄清,我gawk在 xubuntu 11.10 中使用