linux 中实现将每列重复指定次数

 

001、整体重复

a、

[root@pc1 test1]# ls
a.txt
[root@pc1 test1]# cat a.txt                           ## 测试文本
01 02 03 04
05 06 07 08
09 10 11 12
13 14 15 16
17 18 19 20
[root@pc1 test1]# awk '{print $0, $0}' a.txt          ##重复2次
01 02 03 04 01 02 03 04
05 06 07 08 05 06 07 08
09 10 11 12 09 10 11 12
13 14 15 16 13 14 15 16
17 18 19 20 17 18 19 20
[root@pc1 test1]# awk '{print $0, $0, $0}' a.txt      ##重复3次
01 02 03 04 01 02 03 04 01 02 03 04
05 06 07 08 05 06 07 08 05 06 07 08
09 10 11 12 09 10 11 12 09 10 11 12
13 14 15 16 13 14 15 16 13 14 15 16
17 18 19 20 17 18 19 20 17 18 19 20

 

b、

[root@pc1 test1]# ls
a.txt
[root@pc1 test1]# cat a.txt                     ## 测试文本
01 02 03 04
05 06 07 08
09 10 11 12
13 14 15 16
17 18 19 20                                     ## 批量实现
[root@pc1 test1]# awk '{for(i = 1; i <= 3; i++) {printf("%s ",$0)} printf("\n")}' a.txt
01 02 03 04 01 02 03 04 01 02 03 04
05 06 07 08 05 06 07 08 05 06 07 08
09 10 11 12 09 10 11 12 09 10 11 12
13 14 15 16 13 14 15 16 13 14 15 16
17 18 19 20 17 18 19 20 17 18 19 20

 

002、逐列重复

[root@pc1 test1]# ls
a.txt
[root@pc1 test1]# cat a.txt             ## 测试文本
01 02 03 04
05 06 07 08
09 10 11 12
13 14 15 16
17 18 19 20                             ## 每列重复3次
[root@pc1 test1]# awk '{for(i = 1; i <= NF; i++) {for(j = 1; j <= 3; j++){printf("%s ", $i)}};printf("\n")}' a.txt
01 01 01 02 02 02 03 03 03 04 04 04
05 05 05 06 06 06 07 07 07 08 08 08
09 09 09 10 10 10 11 11 11 12 12 12
13 13 13 14 14 14 15 15 15 16 16 16
17 17 17 18 18 18 19 19 19 20 20 20       ## 每列重复5次
[root@pc1 test1]# awk '{for(i = 1; i <= NF; i++) {for(j = 1; j <= 5; j++){printf("%s ", $i)}};printf("\n")}' a.txt
01 01 01 01 01 02 02 02 02 02 03 03 03 03 03 04 04 04 04 04
05 05 05 05 05 06 06 06 06 06 07 07 07 07 07 08 08 08 08 08
09 09 09 09 09 10 10 10 10 10 11 11 11 11 11 12 12 12 12 12
13 13 13 13 13 14 14 14 14 14 15 15 15 15 15 16 16 16 16 16
17 17 17 17 17 18 18 18 18 18 19 19 19 19 19 20 20 20 20 20

 。

 

posted @ 2024-02-20 10:51  小鲨鱼2018  阅读(5)  评论(0编辑  收藏  举报