Linux命令列批量替換多檔案中的字串

2021-08-29 20:01:30 字數 1026 閱讀 9548

一種是mahuinan法,一種是sumly法,一種是30t法分別如下:

一、mahuinan法:

用sed命令可以批量替換多個檔案中的字串。sed -i "s/原字串/新字串/g" `grep 原字串 -rl 所在目錄`

例如:我要把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 ./`

sed -i 's/^a.key\w*=.*/a.key=bbbbbbbbbbbbbbbb/g' `grep ^a.key\w*=.* -rl /home/daniel/temp/tmp/a.properties`

二、sumly法

執行命令:

perl -p -i -e "s/china/sumly/g" /www/*.htm /www/*.txt

上面的意思是說將www資料夾下所有的htm和txt檔案中的「china」都替換為「sumly」

perl -pi -e 's/^a.key\w*=.*/a.key=aaddddddd/g' /home/daniel/temp/a.properties

上面的意思是說將/home/daniel/temp/a.properties檔案以a.key加任意空格加=替換為a.key=aaddddddd

三、30t法

執行命令:

上面的意思是說將www資料夾下所有檔案,不分副檔名,所有的「baidu」都替換為「30t」

Linux命令列批量替換多檔案中的字串

一種是mahuinan法,一種是sumly法,一種是30t法分別如下 一 mahuinan法 用sed命令可以批量替換多個檔案中的字串。sed i s 原字串 新字串 g grep 原字串 rl 所在目錄 例如 我要把mahuinan替換為huinanma,執行命令 sed i s mahuinan...

Linux命令列批量刪除檔案(目錄)

快速 批量刪除檔案或目錄 1 1.快速刪除大資料夾 注意目錄後的結束符 對於含有海量檔案的目錄,不能直接rm rf刪除,這樣效率很慢 rsync a delete blank test 使用空資料夾 blank 覆蓋原資料夾 test mkdir empty dir rsync a delete e...

linux 命令列開啟檔案

在mac下的終端裡可以輸入open來開啟任意型別的檔案,linux下是否也有類似的命令呢?經查,發現有三個命令可以實現類似效果 see通過查詢在mailcap檔案中設定的檔案型別和應用程式對映來開啟檔案。系統配置檔案在 etc mailcap,使用者可以自定義配置檔案到 mailcap。通過see呼...