linux系统中如何把连续的两行数据转换成一行数据

1、测试数据

root@PC1:/home/test2# cat a.txt
1 e d
2 a g
3 w e
4 d g
5 g j
6 e j
7 l m
8 i n

 

2、awk命令实现

root@PC1:/home/test2# cat a.txt
1 e d
2 a g
3 w e
4 d g
5 g j
6 e j
7 l m
8 i n
root@PC1:/home/test2# awk '{if(NR % 2 != 0) {printf("%s ", $0)} else {print $0}}' a.txt
1 e d 2 a g
3 w e 4 d g
5 g j 6 e j
7 l m 8 i n

 

3、sed命令实现

root@PC1:/home/test2# cat a.txt
1 e d
2 a g
3 w e
4 d g
5 g j
6 e j
7 l m
8 i n
root@PC1:/home/test2# sed 'N; s/\n/ /' a.txt
1 e d 2 a g
3 w e 4 d g
5 g j 6 e j
7 l m 8 i n

 

posted @ 2021-11-02 20:35  小鲨鱼2018  阅读(395)  评论(0编辑  收藏  举报