linux 中如何将一列数据转换为指定列的数据

 

 

001、

复制代码
[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt      ## 测试数据
1
2
3
4
5
6
7
8
9
10               ## 转换为两列数据
[root@pc1 test]# cat a.txt | paste -s -d " " | awk '{for (i = 1; i <= NF; i++) {if(i % 2 == 0) {print $i} else {printf("%s ", $i)}}; if((i - 1) % 2 != 0) {printf("\n")}}'
1 2
3 4
5 6
7 8
9 10
复制代码

 

 

002、转换为3列数据

复制代码
[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt
1
2
3
4
5
6
7
8
9
10              ## 转换为3列数据
[root@pc1 test]# cat a.txt | paste -s -d " " | awk '{for (i = 1; i <= NF; i++) {if(i % 3 == 0) {print $i} else {printf("%s ", $i)}}; if((i - 1) % 3 != 0) {printf("\n")}}'
1 2 3
4 5 6
7 8 9
10
复制代码

 

 

003、转换为7列数据

复制代码
[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt
1
2
3
4
5
6
7
8
9
10
[root@pc1 test]# cat a.txt | paste -s -d " " | awk '{for (i = 1; i <= NF; i++) {if(i % 7 == 0) {print $i} else {printf("%s ", $i)}}; if((i - 1) % 7 != 0) {printf("\n")}}'
1 2 3 4 5 6 7
8 9 10
复制代码

 

posted @   小鲨鱼2018  阅读(209)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2021-10-29 R语言中实现方差和标准差
2021-10-29 R语言中rbind函数和cbind的用法
2021-10-29 R语言中 %in%用法
2021-10-29 linux系统中向行末添加换行符
2021-10-29 linux 系统中实现列转行 及 行转列
2020-10-29 linux系统中的防火墙
2020-10-29 linux系统中删除逻辑卷
点击右上角即可分享
微信分享提示