微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux shell 如何将多列数据变为一行数据

1、测试数据

[root@centos79 test]# cat a.txt
3 f k i
s d g k
z v m x
e 5 8 y

 

2、xargs

[root@centos79 test]# cat a.txt
3 f k i
s d g k
z v m x
e 5 8 y
[root@centos79 test]# cat a.txt | xargs
3 f k i s d g k z v m x e 5 8 y

 

3、sed

[root@centos79 test]# cat a.txt
3 f k i
s d g k
z v m x
e 5 8 y
[root@centos79 test]# sed ':a; N; s/\n/ /; ta' a.txt
3 f k i s d g k z v m x e 5 8 y

 

4、tr

[root@centos79 test]# cat a.txt
3 f k i
s d g k
z v m x
e 5 8 y
[root@centos79 test]# cat a.txt | tr "\n" " " | sed 's/.$/\n/'
3 f k i s d g k z v m x e 5 8 y

 

5、awk

[root@centos79 test]# cat a.txt
3 f k i
s d g k
z v m x
e 5 8 y
[root@centos79 test]# awk '{RS = "\n"; ORS = " "}{print}END{print "\n"}' a.txt | sed 's/.$//'
3 f k i s d g k z v m x e 5 8 y

 

6、awk

[root@centos79 test]# cat a.txt
3 f k i
s d g k
z v m x
e 5 8 y
[root@centos79 test]# awk BEGIN{RS=EOF}'{gsub("\n"," ");print}' a.txt
3 f k i s d g k z v m x e 5 8 y

 

7、

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。