【发布时间】:2014-12-16 10:08:25
【问题描述】:
如何使用awk根据列值将一列数据拆分为多列?
示例文件和所需的输出如下。我的bash 版本是 3.2.52(1)。
$ cat examplefile
A
1
B
2
B
3
C
10
C
11
C
13
A
4
B
5
B
6
B
7
C
14
期望的输出:
$ cat outputfile
A B C
1 2 10
null B C
null 3 11
null null C
null null 13
A B C
4 5 14
null B null
null 6 null
null B null
null 7 null
或者忘记空值如何获得输出文件2中的两列?
cat examplefile2
A
1
B
2
B
3
cat outputfile2
A B
1 2
B
3
【问题讨论】:
-
你尝试了什么?这背后的逻辑是什么?
-
目的是把A,B,C及其后面的行放到不同的列中
-
什么决定一个字段是否为空?
-
将输出视为矩阵
-
不要评论小事,试着用一个完整的解释、一些例子和你尝试过的东西来编辑你的原始问题。否则,人们不太可能花时间去理解问题并试图找出解决问题的方法。
标签: bash command-line awk