Re: [問題] 特殊要求合併文件

看板Linux作者 (伊劍)時間11年前 (2014/10/30 11:41), 編輯推噓2(202)
留言4則, 3人參與, 最新討論串2/4 (看更多)
※ 引述《silverberry (平行線上的交集....)》之銘言: : ※ [本文轉錄自 LinuxDev 看板 #1KKLTbEY ] : 作者: silverberry (平行線上的交集....) 看板: LinuxDev : 標題: [問題] 特殊要求合併文件 : 時間: Thu Oct 30 05:08:48 2014 : 大家好, : 我有兩份文件, : 希望把 B 文件插入到 A 文件的奇數行 : 像是這樣 : A.txt : aaa : bb : ccccc : dddddddddddddddddddddd : eee : B.txt : >1 : >2 : >3 : >4 : >5 : NewAB.txt : >1 : aaa : >2 : bb : >3 : ccccc : >4 : dddddddddddddddddddddd : >5 : eee : 我原本嘗試 awk, cat, sed 都做不出來, : 請問有沒有什麼 script 可以用? : 謝謝大家~ 簡單寫了一下 如果你是要B插入A產生新的AB.txt的話 #!/bin/bash bnum=`cat B.txt|grep -v '^$'|wc -l` for (( i=1 ; i<=$bnum ; i++)) do abox[i]=`cat A.txt |grep -v '^$'|head -n $i|tail -n 1|awk '{print $1}'` bbox[i]=`cat B.txt |grep -v '^$'|head -n $i|tail -n 1|awk '{print $1}'` echo ${bbox[i]} >> AB.txt echo ${abox[i]} >> AB.txt done 我測試過是可以的達到你要的效果的 你可以試試看 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.105.121 ※ 文章網址: http://www.ptt.cc/bbs/Linux/M.1414640491.A.407.html

10/30 12:18, , 1F
陣列應該可以不必用到
10/30 12:18, 1F

10/30 12:58, , 2F
用 sed -n ${i}p {A,B}.txt >> AB.txt 不用 box...
10/30 12:58, 2F

11/01 01:43, , 3F
我是 linux 生手,所以 j 大的方法我不太會用
11/01 01:43, 3F

11/01 01:44, , 4F
但是感謝 j 大~ k 大的方法我試了成功了~ 感謝^^
11/01 01:44, 4F
文章代碼(AID): #1KKRDhG7 (Linux)
文章代碼(AID): #1KKRDhG7 (Linux)