linux中替換檔案中的內容(linux批量修改檔案內容)

linux怎麼批量替換檔案內容

方法一:

使用perl ,命令如下:

find -name '要查詢的檔名' | xargs perl -pi -e 's|被替換的字串|替換後的字串|g'

下面這個例子就是將當前目錄及所有子目錄下的所有pom.xml檔案中的

”http://repo1.maven.org/maven2“

替換為

”http://localhost:8081/nexus/content/groups/public“.

find -name 'pom.xml' | xargs perl -pi -e 's|http://repo1.maven.org/maven2|http://localhost:8081/nexus/content /groups/public|g'

這裡用到了Perl語言,

perl -pi -e 在Perl 命令中加上-e 選項,後跟一行程式碼,那它就會像執行一個普通的Perl 指令碼那樣執行該程式碼.

從命令列中使用Perl 能夠幫助實現一些強大的、實時的轉換。認真研究正規表示式,並正確地使用,將會為您省去大量的手工編輯工作。

find -name 'pom.xml' | xargs perl -pi -e 's|http://repo1.maven.org/maven2|http://localhost:8081/nexus/content/groups/public|g'

方法二:

使用sed命令如下:

sed -i "s/原字串/新字串/g" `grep 原字串 -rl 所在目錄`

Linux下批量替換多個檔案中的字串的簡單方法。用sed命令可以批量替換多個檔案中的字串。

例如:我要把aaa替換 為bbb,執行命令:

sed -i "s/aaa/bbb/g" 'grep aaa -rl /www'

這是目前linux最簡單的批量替換字串命令了!

具體格式如下:

sed -i "s/oldString/newString/g"  `grep oldString -rl /path`

例項程式碼:

sed -i "s/大小/高低/g" `grep 大小 -rl /usr/aa`sed -i "s/大小/高低/g" `grep 大小 -rl ./`

以上就是linux怎麼批量替換檔案內容的詳細內容,更多請關注1818ip.com其它相關文章!