[精讚] [會員登入]
25627

[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

你可能感興趣的文章

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

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

[CSH/TCSH] 使用tcsh SHELL #2 --檢查、傳值 6. 檔案或目錄的檢查 SHELL 中常會用到檔案或目錄的檢查,一般性的語法是: if [ Operator

FREEBSD、LINUX和MAC拷背目錄的差別 原本以為cp複製一個目錄,但在FREEBSD、LINUX和MAC竟有不同的表現情況

使用sdiff來比對檔案 linux 有一個不錯的工具可以來比對文字檔案,很有效率,叫sdiff

[vi/vim] 修改顯示顏色的檔案類型,編修自動上色的檔案類型 vi/vim 編修自動上色的檔案類型,說明新增上色檔案附檔名的方法

隨機好文

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

APACHE的記錄檔格式 LogFormat 語法 在APACHE中有定義一些記錄的語法模版 在 /etc/httpd/conf/httpd.conf 中: LogForm

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

McJob 淺談 在英語世界裡,近期多了一個英文生字 Mcjob,定義為「低薪、無聊且沒有什麼前景的工作」。

[CKeditor4] 設定區塊樣式、段落格式、字型名稱及字型大小 CKeditor4中要自訂設定區塊樣式、段落格式、字型名稱及字型大小。