linux 中实现将连续的两行数据转换为一行数据
001、sed实现
root@PC1:/home/test2# ls a.txt 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
002、awk实现
root@PC1:/home/test2# ls a.txt 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) {print $0} else {printf("%s ", $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
root@PC1:/home/test3# ls a.txt root@PC1:/home/test3# 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/test3# awk '{if(NR % 2 == 0) {ORS = "\n"} else {ORS = " "} {print}}' 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