【发布时间】:2014-08-01 19:15:24
【问题描述】:
我有一个格式如下的文件:
#some header text
a 1 1234
b 2 3333
c 2 1357
#some header text
a 4 8765
b 1 1212
c 7 9999
...
在 n 行块中包含由空行分隔的重复数据(可能还有其他一些标题文本)。我只对第三列感兴趣,想做一些 grep, cut, awk, sed, paste 魔法把它变成这样:
a 1234 8765 ...
b 3333 1212
c 1357 9999
其中每个后续 n 行块的第三列被添加为新列。我想你可以称之为转置,一次只有 n 行,只有一个特定的列。前导 (a b c) 列标签不是必需的...如果我能抓取第三列中的数据,我会很高兴
这甚至可能吗?一定是。我可以使用 grep 和 cut 将内容缩减为仅有趣的列:
cat myfile | grep -A2 ^a\ | cut -c13-15
但我不知道如何将这些 n 行块和 sed/粘贴/无论它们放入重复的 n 行列中。
有什么想法吗?
【问题讨论】:
-
但这不是合并2个文件,只是处理单个文件还是我读错了?