方法:1、利用perl命令,語法為“find -name’文件名’|xargs perl-pi-e ‘s|原內容|新內容|g’”;2、利用sed命令,語法為“sed-i “s/原內容/新內容/g” `grep 原內容 -rl 目錄`”。
本教程操作環境:linux7.3系統、Dell G3電腦。
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命令可以批量替換多個文件中的字符串。
例如:我要把mahuinan替換?為huinanma,執行命令:?
sed?-i?"s/mahuinan/huinanma/g"?'grep?mahuinan?-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視頻教程》
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END
喜歡就支持一下吧
相關推薦