[精讚] [會員登入]
25748

[Linux] 進行字串取代,三種字串取代的方法

使用vi、sed、perl來取代字串

分享此文連結 //n.sfs.tw/11447

分享連結 [Linux] 進行字串取代,三種字串取代的方法@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 12:25:20 最後編修
2017-07-17 12:54:51 By 張○○
 

自動目錄

在linux/ freebsd 下,要將字串取代,可以開啟 vim 用以下的指令:

使用vi

搜尋並取代:
從第n列搜尋到第m列,將str1字串用str2字串取代;option是選項,有兩個參數: g全部取代 c確認再取代
:n,ms/str1/str2/option

範例

檔頭到檔尾用str2取代str1

:1,$s/str1/str2/g 
:%s/str1/str2/g

第10到第20行用str2取代str1

:10,20s/str1/str2/g

但是針對大量的檔案,或是比較複雜的 regex,用這個方法就絕對不好,所以在 console 下,我們有另一個選擇:

使用 sed

$ sed -e 's/要取代的文字/取代文字/' -i file

使用perl:

$ perl -pi -e 's/要取代的文字/取代文字/' file

延伸閱讀

[PERL]] find 和 perl 的結合--大量檔案中文字的取代@新精讚

[MYSQL] 字串取代@精讚


原文  2009-11-13 14:10:56

END

你可能感興趣的文章

windows, linux, freebsd 下安裝git windows, linux, freebsd 下安裝git

[Rsync] Freebsd10+Rsync / Centos7+Rsync Freebsd10 和 Centos7 安裝Rsync

[Linux] mongodb 初步--3/3 我使用mongo 的一些大小事:資料庫的權限、幫助

[bc] linux 的計算機bc 如何進行8進位、10進位、16進位等轉換 linux 的計算機bc--如何進行8進位、10進位、16進位等轉換

利用tr如何移除檔案中的 ^M 利用tr如何移除檔案中的換行 ^M

[bc] linux 的計算機 bc 指令列模式、輸出結果到檔案 linux 的計算機 bc 計算結果輸出

隨機好文

[jQuery] select 元件的取值及給值 html中的元件select,在jquery中要如何使用?

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

[Freebsd] 定時測試 ADSL 是否斷線並重連 中華電信 ADSL 雖有固定 ip,可是他卻會不定時「斷線」, 使用以下的 方法可以定時測試是否斷線,以及重新撥接。

[PHP] 檢查IP是否在某個網段內 mtachcidr 要檢查IP是否在某個網段內,要寫幾行?10行?5行? 不用,只要2行。以下是我寫的 code /** * matchCI

[CodeIgniter 3] 資料庫的使用方法整理2/2 CI3 承襲 CI2,有很多的builder class可以用,依各人的使用習慣,有人喜歡一堆sql字串,有人喜歡用helper