(一)通過vi編輯器來替換。
vi/vim 中可以使用 :s 命令來替換字串。
:s/well/good/ 替換當前行第乙個 well 為 good
:s/well/good/g 替換當前行所有 well 為 good
:n,$s/well/good/ 替換第 n 行開始到最後一行中每一行的第乙個 well 為 good
:n,$s/well/good/g 替換第 n 行開始到最後一行中每一行所有 well 為 good
n 為數字,若 n 為 .,表示從當前行開始到最後一行
:%s/well/good/(等同於 :g/well/s//good/) 替換每一行的第乙個 well 為 good
:%s/well/good/g(等同於 :g/well/s//good/g) 替換每一行中所有 well 為 good
可以使用 # 作為分隔符,此時中間出現的 / 不會作為分隔符
:s#well/#good/# 替換當前行第乙個 well/ 為 good/
:%s#/usr/bin#/bin#g 可以把檔案中所有路徑/usr/bin換成/bin
(二)直接替換檔案中的字串。(此法不用開啟檔案即可替換字串,而且可以批量替換多個檔案。)
1.perl命令替換,引數含義如下:
-a 自動分隔模式,用空格分隔$_並儲存到@f中。相當於@f = split 」。分隔符可以使用-f引數指定
-f 指定-a的分隔符,可以使用正規表示式
-e 執行指定的指令碼。
-i《副檔名》 原地替換檔案,並將舊檔案用指定的副檔名備份。不指定副檔名則不備份。
-l 對輸入內容自動chomp,對輸出內容自動新增換行
-n 自動迴圈,相當於 while(<>)
-p 自動迴圈+自動輸出,相當於 while(<>)
用法示例:
perl -p -i.bak -e 's/\bfoo\b/bar/g' *.c
將所有c程式中的foo替換成bar,舊檔案備份成.bak
perl -p -i -e "s/shan/hua/g" ./lishan.txt ./lishan.txt.bak
將當前資料夾下lishan.txt和lishan.txt.bak中的「shan」都替換為「hua」
perl -i.bak -pe 's/(\d+)/ 1 + $1 /ge' file1 file2
將每個檔案中出現的數值都加一
2.sed命令下批量替換檔案內容
格式: sed -i "s/查詢字段/替換字段/g" `grep 查詢字段 -rl 路徑` 檔名
-i 表示inplace edit,就地修改檔案
-r 表示搜尋子目錄
-l 表示輸出匹配的檔名
s表示替換,d表示刪除
示例:sed -i "s/shan/hua/g" lishan.txt
把當前目錄下lishan.txt裡的shan都替換為hua
sed的其他用法如下:
1、刪除行首空格
sed 's/^[ ]*//g' filename
sed 's/^ *//g' filename
sed 's/^[[:space:]]*//g' filename
2、行後和行前新增新行
行後:sed 's/pattern/&\n/g' filename
行前:sed 's/pattern/\n&/g' filename
&代表pattern
3、使用變數替換(使用雙引號)
sed -e "s/$var1/$var2/g" filename
4、在第一行前插入文字
sed -i '1 i\插入字串' filename
5、在最後一行插入
sed -i '$ a\插入字串' filename
6、在匹配行前插入
sed -i '/pattern/ i "插入字串"' filename
7、在匹配行後插入
sed -i '/pattern/ a "插入字串"' filename
8、刪除文字中空行和空格組成的行以及#號注釋的行
grep -v ^# filename | sed /^[[:space:]]*$/d | sed /^$/d
linux中批量替換文字中字串
一 通過vi編輯器來替換。vi vim 中可以使用 s 命令來替換字串。s well good 替換當前行第乙個 well 為 good s well good g 替換當前行所有 well 為 good n,s well good 替換第 n 行開始到最後一行中每一行的第乙個 well 為 goo...
linux中的文字的批量替換
1 檔案內全部替換 s abc 123 g 如檔案內有 可用 替換,s abc 123 g,如果替換或被替換內容中有 特別是路徑 可用 轉義 注 把abc替換成123 或者 s str1 str2 g 用str2替換檔案中所有的str1 2 檔案內區域性替換 20,30s abc 123 如檔案內有...
批處理中替換文字內容
fosjos 無聊的菜鳥程式設計師 信譽 100 2006 7 20 12 18 23 得分 0 首先 登錄檔新增乙個或兩個 reg dword 值 hkey local machine software microsoft command processor enableextensions 或 ...