shell script合併兩個檔案 - Linux

Table of Contents

想請問該如何利用shell script合併兩個檔案呢?

我有兩個檔案,內容分別如下
a.txt
-----
(一堆程式碼)

{REPLACE}

(一堆程式碼)


b.txt
-----
(額外的程式碼)


我想要做的事情是,把b.txt的東西塞到a.txt中的{REPLACE}這邊

原本想說使用sed可以作到,但發現sed只能取代當行或單字
沒辦法取代多行的

另一個想到的方法是使用
cat a.txt | while read inputline 這樣的方式
但是程式碼排版會亂掉,縮排消失

有什麼好得方法嗎?
(當然,我知道可以用c++之類的寫個程式就好XD只是想瞭解有沒有script解決方案)


感謝m(_ _)m

--

All Comments

Puput avatarPuput2010-06-18
縮排可以用 indent 縮阿.....
Bethany avatarBethany2010-06-18
用awk, $0 match replace的時候用system()去 cat b.txt,
$0不match replace的時候 echo $0 然後統統output到c.txt