如何使用awk附加数据列

时间:2013-04-09 16:47:48

标签: awk

我有一个这种格式的文件: -

1   2   3   4
5   6   7   8
9   10  11  12 

我需要帮助才能将这些列附加到像这样的循环中

1
5
9

2
6
10

...

1 个答案:

答案 0 :(得分:2)

此行应与动态行和列一起使用

 awk '{for(i=1;i<=NF;i++)a[NR][i]=$i}END{for(i=1;i<=NF;i++){for(j=1;j<=NR;j++)print a[j][i]; print ""}}' file

这种格式看起来更好:

awk '{for(i=1;i<=NF;i++)a[NR][i]=$i}
    END{
            for(i=1;i<=NF;i++){
                for(j=1;j<=NR;j++)
                    print a[j][i]
                print ""
            }
        }' file

以你的例子:

kent$  awk '{for(i=1;i<=NF;i++)a[NR][i]=$i}END{for(i=1;i<=NF;i++){for(j=1;j<=NR;j++)print a[j][i]; print ""}}' file
1
5
9

2
6
10

3
7
11

4
8
12