2013-01-04

【Linux】Shell Script : 取代多個檔案中的文字

Replace text in Mutiple Files
一次取代多個檔案中的文字。

TMPFILE=/tmp/tmp.$$
for f in *.txt; do
  sed 's/OLD_STRING/NEW_STRING/' $f > $TMPFILE
  # exit 0
  mv $TMPFILE $f
done

搞定


回應 匿名:
不小心貼錯程式碼了,Sorry。
exit 0 可以 unmark ,用來先測試一下結果是否正常。
所以最後還是用 mv 的方式。



2 comments:

  1. sed 的 regex 似乎沒有正常結束?

    另外用 -i 指令就不用再多做一次 mv 的動作了

    回覆刪除
    回覆
    1. 不小心貼錯程式碼了,Sorry。
      exit 0 可以 unmark ,用來先測試一下結果是否正常。
      所以最後還是用 mv 的方式。

      刪除