linux系统中如何把一列数据转换为一行数据

 

1、测试数据,测试1

[root@centos7 test2]# seq -f %02g 10 > a.txt
[root@centos7 test2]# ls
a.txt
[root@centos7 test2]# cat a.txt
01
02
03
04
05
06
07
08
09
10

 

2、测试2

[root@centos7 test2]# cat a.txt
01
02
03
04
05
06
07
08
09
10
[root@centos7 test2]# cat a.txt | xargs
01 02 03 04 05 06 07 08 09 10

 

3、测试3

[root@centos7 test2]# cat a.txt
01
02
03
04
05
06
07
08
09
10
[root@centos7 test2]# cat a.txt | tr "\n" " " | sed '$ s/$/\n/'
01 02 03 04 05 06 07 08 09 10

 

4、测试4

[root@centos7 test2]# cat a.txt
01
02
03
04
05
06
07
08
09
10
[root@centos7 test2]# awk BEGIN{RS=EOF}'{gsub("\n"," ");print}' a.txt
01 02 03 04 05 06 07 08 09 10

 

5、测试5

[root@centos7 test2]# cat a.txt
01
02
03
04
05
06
07
08
09
10
[root@centos7 test2]# awk '{printf("%s ", $0)}END{printf("\n")}' a.txt
01 02 03 04 05 06 07 08 09 10

 

6、测试6、

[root@centos7 test2]# cat a.txt
01
02
03
04
05
06
07
08
09
10
[root@centos7 test2]# sed ':a;N;s/\n/ /;ta' a.txt
01 02 03 04 05 06 07 08 09 10

 

7、测试7

[root@centos7 test2]# cat a.txt
01
02
03
04
05
06
07
08
09
10
[root@centos7 test2]# awk 'BEGIN{RS="\n"; ORS=" "}{print}END{printf("\n")}' a.txt
01 02 03 04 05 06 07 08 09 10

 

posted @ 2021-04-26 09:16  小鲨鱼2018  阅读(856)  评论(0编辑  收藏  举报