我需要将大文件中的单列数据拆分为两列,如下所示:
A
B B A
C ----> D C
D F E
E H G
F
G
H
使用unix shell命令和/或小shell脚本有一种简单的方法吗? AWK?
答案 0 :(得分:3)
您可以使用以下awk脚本:
awk 'NR % 2 != 0 {cache=$0}; NR % 2 == 0 {print $0 cache}' data.txt
输出:
BA
DC
FE
HG
它缓存奇数行的值并输出偶数行+将缓存附加到它们。
答案 1 :(得分:3)
$ awk 'NR%2{s=$0;next} {print $0,s}' file
B A
D C
F E
H G
答案 2 :(得分:0)
我知道这被标记为awk
,但我无法阻止自己发布sed
解决方案,因为问题是“简单的方式......使用unix shell命令” :
$ sed -n 'h;n;G;s/\n/ /g;p' data.txt
B A
D C
F E
H G