批量替換和刪除多個檔案中的指定字串

2021-09-02 19:49:05 字數 550 閱讀 3291

[size=medium]

一、linux sed 批量替換多個檔案中的字串

sed -i "s/oldstring/newstring/g" `grep oldstring -rl datadir`

例如:替換/data下所有檔案中的teststring為newstring

sed -i "s/teststring/newstring/g" `grep teststring -rl /data`

二、批量刪除指定字串的行

sed -e '/test/d' test.txt // 刪除test.txt中含"test"的行,但不改變test.txt檔案本身,操作之後的結果在終端顯示

sed -e '/test/d' test.txt > test_new.txt // 刪除test.txt中含"test"的行,將操作之後的結果儲存到test_new.txt

sed '/test/d;/boy/d' test.txt > test_new.txt // 刪除含字串"test"或「boy"的行,將結果儲存到test_new.txt

[/size]

sed 單檔案和批量替換多個檔案中內容

格式 單檔案替換 sed i s 原字串 新字串 g 檔名,例如,將test.txt 檔案中的abc 替換成xyz sed i s abc xyz g test.txt 多檔案批量替換 sed i s 原字串 新字串 g grep rl 原字串 所在目錄 grep r 搜尋子目錄查詢,l 表示輸出匹...

linux sed 批量替換多個檔案中的字串

一 linux sed 批量替換多個檔案中的字串 sed i s oldstring newstring g grep oldstring rl yourdir 例如 替換 home下所有檔案中的www.bcak.com.cn為bcak.com.cn sed i s www.bcak.com.cn ...

Shell 批量替換 刪除檔案中的內容

大量檔案修改同一內容 find name xml xargs perl pi e s 修改前內容 修改後內容 g 此方法用完後會出現檔案丟失問題,不懂為何。我一一對應找到丟失檔案,重新貼上複製提示檔案還在此資料夾下,只不過隱身了。乙個文件修改大量相同內容 sed i s 修改前內容 修改後內容 g ...