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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM