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

linux shell实现将指定行重复指定的次数

1、测试数据

root@ubuntu01:/home/test2# cat test.txt   ## 实现将每一行按照第二行数字指定的行数重复
1       3       e3rt    idf
2       2       32      ffj
3       5       cc      kkk
4       4       wf      34

 

 

2、while + for循环实现

root@ubuntu01:/home/test2# cat test.txt
1       3       e3rt    idf
2       2       32      ffj
3       5       cc      kkk
4       4       wf      34
root@ubuntu01:/home/test2# cat test.txt | while read {i,j,k}; do for m in $(seq $j); do sed -n "$i"p test.txt >> restlt.txt; done; done
root@ubuntu01:/home/test2# ls
restlt.txt  test.txt
root@ubuntu01:/home/test2# cat restlt.txt   ## 第一行重复3次,第二行重复2次,第三行重复5次。。。。
1       3       e3rt    idf
1       3       e3rt    idf
1       3       e3rt    idf
2       2       32      ffj
2       2       32      ffj
3       5       cc      kkk
3       5       cc      kkk
3       5       cc      kkk
3       5       cc      kkk
3       5       cc      kkk
4       4       wf      34
4       4       wf      34
4       4       wf      34
4       4       wf      34

 

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