您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關linux的替換命令是什么,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
linux的替換命令:1、利用vim中“:s/原內容/替換內容/”命令來替換內容;2、利用sed配合grep替換內容;3、利用“find -name 文件名| xargs perl -pi -e 's|原內容|替換內容|g'”命令替換內容。
本教程操作環境:linux7.3系統、Dell G3電腦。
1、通過vim編輯器來替換
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
2、sed和grep配合
sed -i s/yyyy/xxxx/g `grep yyyy -rl --include="*.txt" ./`
作用:將當前目錄(包括子目錄)中所有txt文件中的yyyy字符串替換為xxxx字符串。其中,
-i 表示操作的是文件,``括起來的grep命令,表示將grep命令的的結果作為操作文件。
s/yyyy/xxxx/表示查找yyyy并替換為xxxx,后面跟g表示一行中有多個yyyy的時候,都替換,而不是僅替換第一個
另外,如果不需要查找子目錄,僅需要在當前目錄替換,用sed命令就行了,命令如下:sed -i s/xxxx/yyyy/g ./*.txt
3.find命令查找和替換
find -name '要查找的文件名' | xargs perl -pi -e 's|被替換的字符串|替換后的字符串|g'
#查找替換當前目錄下包含字符串并進行替換
find -name '*.txt' | xargs perl -pi -e 's|被替換內容|替換內容|g' #遞歸查找替換
find . -type f -name '*.html' | xargs perl -pi -e 's|被替換內容|替換內容|g'
以上就是linux的替換命令是什么,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。