在linux中,可以利用sed命令批量替換文件內(nèi)容,該命令是利用腳本來處理文本文件,可以替換文件內(nèi)所有匹配的字符串,語法為“sed -i "s/舊內(nèi)容/新內(nèi)容/g" 文件路徑”。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
linux怎么批量替換文件內(nèi)容
1.替換文件夾內(nèi)所有文件匹配的字符串
sed -i "s/舊內(nèi)容/新內(nèi)容/g" `grep 舊內(nèi)容 -rl 文件夾路徑`
例如將/var/www/test文件夾下的所有文件內(nèi)容中的abc字符串換成123
sed -i "s/abc/123/g" `grep abc -rl /var/www/test`
注:grep內(nèi)容用的不是單引號',而是`,tab鍵上面的,請使用絕對路徑
2.替換文件內(nèi)所有匹配的字符串
sed -i "s/舊內(nèi)容/新內(nèi)容/g" 文件路徑
例如將/var/www/test/index.html文件夾下的所有文件內(nèi)容中的abc字符串換成123
sed -i "s/abc/123/g" /var/www/test/index.html
linux批量替換指定文件夾中所有文件的指定內(nèi)容
命令:sed -i "s#https#http#g" `grep http -rl VEROMODA`
功能:用來替換當前目錄VEROMODA文件夾及子文件夾中所有文件中的http …
Linux sed 命令是利用腳本來處理文本文件。
sed 可依照腳本的指令來處理、編輯文本文件。
Sed 主要用來自動編輯一個或多個文件、簡化對文件的反復(fù)操作、編寫轉(zhuǎn)換程序等。
語法
sed [-hnV][-e<script>][-f<script文件>][文本文件]
參數(shù)說明:
-e<script>或–expression=<script> 以選項中指定的script來處理輸入的文本文件。
-f<script文件>或–file=<script文件> 以選項中指定的script文件來處理輸入的文本文件。
-h或–help 顯示幫助。
-n或–quiet或–silent 僅顯示script處理后的結(jié)果。
-V或–version 顯示版本信息。
動作說明:
a :新增, a 的后面可以接字串,而這些字串會在新的一行出現(xiàn)(目前的下一行)~
c :取代, c 的后面可以接字串,這些字串可以取代 n1,n2 之間的行!
d :刪除,因為是刪除啊,所以 d 后面通常不接任何東東;
i :插入, i 的后面可以接字串,而這些字串會在新的一行出現(xiàn)(目前的上一行);
p :打印,亦即將某個選擇的數(shù)據(jù)印出。通常 p 會與參數(shù) sed -n 一起運行~
s :取代,可以直接進行取代的工作哩!通常這個 s 的動作可以搭配正規(guī)表示法!例如 1,20s/old/new/g 就是啦!