linux shell编程: printf 第一行为什么只打印0呢?“:”去哪里了?

[kodango@devops ~]$ echo "1 2 3" | awk '{
for (i=0;i<NF;i++)
a[i]=i;
}
END
{
print 3 in a
for (i in a)
printf "%s: %s\n", i, a[i];
}'
输出:
0
0: 0
1: 1
2: 2
”, i, a[i];“这一行不写行不行?

我这里正常啊,有冒号打印的。


不过我觉得你想要的可能是下面这样。

追问

”, i, a[i];“这一行不写行不行?

追答

这行不写不就没有打印输出了吗?你不就是要输出这些值吗?
首先得说明你需要什么样的结果,我才好知道如何正确地帮助你。

追问

哦,一看到打印输出,就知道了。这是C。
学shell 学蒙了。
我觉得第一行的0,没有输出,所以对了。hha
谢谢你!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-10-14
这个太乱了, shell编程还是简单点好些啊,可以私聊吗?追问

这个是abs上的数组的例子。没看懂。
”, i, a[i];“这一行不写行不行?

追答

能私聊吗?
linux系统问题, 或者是shell问题都行啊

追问

解决了,谢谢哎。

相似回答