欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux中替換文件中的某個(gè)字符串的常用命令詳解

 更新時(shí)間:2025年06月08日 08:28:20   作者:思靜魚  
當(dāng)你在使用文本文件時(shí),很可能需要查找和替換文件中的字符串,sed 命令主要用于替換一個(gè)文件中的文本,本文給大家介紹了Linux中替換文件中的某個(gè)字符串的常用命令,需要的朋友可以參考下

如果你想在 Linux 中替換文件中的某個(gè)字符串,可以使用以下命令:

1. 基本替換(sed 命令)

sed -i 's/原字符串/新字符串/g' 文件名

示例:將 file.txt 中所有的 old_text 替換成 new_text

sed -i 's/old_text/new_text/g' file.txt

選項(xiàng)說明

  • -i:直接修改文件(不加 -i 則只輸出到終端,不修改文件)。
  • s/:表示替換(substitute)。
  • g:全局替換(否則每行只替換第一個(gè)匹配項(xiàng))。

2. 替換時(shí)忽略大小寫(sed + I 選項(xiàng))

sed -i 's/原字符串/新字符串/gI' 文件名

示例:替換 hello 為 hi,并忽略大小寫(Hello、HELLO 也會(huì)被替換)

sed -i 's/hello/hi/gI' file.txt

3. 替換時(shí)使用變量(避免特殊字符沖突)

如果替換的內(nèi)容包含 / 或其他特殊字符,可以改用 | 或 # 作為分隔符:

sed -i "s|原字符串|$變量名|g" 文件名

示例:用變量 $new_ip 替換文件中的 192.168.1.1

new_ip="10.0.0.1"
sed -i "s|192.168.1.1|$new_ip|g" config.txt

4. 替換指定行(sed 限定行號(hào))

sed -i '行號(hào)s/原字符串/新字符串/' 文件名

示例:僅在第 5 行替換 foo 為 bar

sed -i '5s/foo/bar/' file.txt

5. 替換前備份原文件(sed -i.bak)

sed -i.bak 's/old/new/g' file.txt

這會(huì)生成 file.txt.bak 備份文件,再修改 file.txt。

6. 使用 awk 替換

awk '{gsub(/原字符串/, "新字符串"); print}' 原文件 > 新文件

示例:替換 data.txt 中的 apple 為 orange,并保存到 new_data.txt

awk '{gsub(/apple/, "orange"); print}' data.txt > new_data.txt

7. 使用 perl 替換

perl -pi -e 's/原字符串/新字符串/g' 文件名

示例:替換 error 為 warning

perl -pi -e 's/error/warning/g' log.txt

8. 替換多個(gè)文件(find + sed)

find /路徑 -type f -name "*.txt" -exec sed -i 's/old/new/g' {} \;

示例:替換 /etc/nginx/ 目錄下所有 .conf 文件中的 example.com 為 mysite.com

find /etc/nginx/ -type f -name "*.conf" -exec sed -i 's/example.com/mysite.com/g' {} \;

9. 交互式替換(vim 命令)

vim 文件名
:%s/原字符串/新字符串/g
:wq

示例:在 vim 中替換 cat 為 dog

vim animals.txt
:%s/cat/dog/g
:wq

總結(jié)

需求命令
基本替換sed -i 's/old/new/g' file
忽略大小寫sed -i 's/old/new/gI' file
使用變量`sed -i "s
替換指定行sed -i '5s/old/new/' file
備份原文件sed -i.bak 's/old/new/g' file
多文件替換find /path -name "*.ext" -exec sed -i 's/old/new/g' {} \;

以上就是Linux中替換文件中的某個(gè)字符串的常用命令詳解的詳細(xì)內(nèi)容,更多關(guān)于Linux替換文件字符串的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Linux解壓縮(打開)Gz文件的命令詳解

    Linux解壓縮(打開)Gz文件的命令詳解

    GNU 的 Gzip 是一種流行的數(shù)據(jù)壓縮程序,而 GZ 文件是由標(biāo)準(zhǔn) Gzip 壓縮的存檔文件,本文給大家介紹了如何在Linux解壓縮(打開)Gz 文件,文中有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下
    2023-12-12
  • Shell腳本四則運(yùn)算符號(hào)實(shí)用的技巧和注意事項(xiàng)

    Shell腳本四則運(yùn)算符號(hào)實(shí)用的技巧和注意事項(xiàng)

    這篇文章主要介紹了Shell腳本四則運(yùn)算符號(hào)實(shí)用的技巧和注意事項(xiàng),文中通過示例代碼介紹了基本的算術(shù)運(yùn)算符號(hào)(加、減、乘、除)、浮點(diǎn)數(shù)運(yùn)算(使用bc命令),以及自增、自減和復(fù)合賦值運(yùn)算符的使用技巧,需要的朋友可以參考下
    2025-04-04
  • linux lsof命令詳解及實(shí)例

    linux lsof命令詳解及實(shí)例

    這篇文章主要介紹了linux lsof命令詳解的相關(guān)資料,lsof是一個(gè)列出當(dāng)前系統(tǒng)打開文件的工具,這里詳細(xì)介紹如何使用,需要的朋友可以參考下
    2017-03-03
  • linux下使用perl獲取本機(jī)ip的幾種方法介紹

    linux下使用perl獲取本機(jī)ip的幾種方法介紹

    需要獲取本機(jī)ip有很多種情景,比如做分布式處理的時(shí)候。那么,如何在worker腳本里獲取本機(jī)ip?本文列舉了一系列的方法,有長(zhǎng)有短,各有優(yōu)劣,有shell有perl有python
    2013-02-02
  • linux下自動(dòng)備份MySQL數(shù)據(jù)并上傳到FTP上的shell腳本

    linux下自動(dòng)備份MySQL數(shù)據(jù)并上傳到FTP上的shell腳本

    linux下自動(dòng)備份MySQL數(shù)據(jù)并上傳到FTP上的shell腳本,需要的朋友可以參考下
    2013-01-01
  • Linux中執(zhí)行shell腳本的4種方法總結(jié)

    Linux中執(zhí)行shell腳本的4種方法總結(jié)

    這篇文章主要介紹了Linux中執(zhí)行shell腳本的4種方法總結(jié),即在Linux中運(yùn)行shell腳本的4種方法,需要的朋友可以參考下
    2014-08-08
  • Shell腳本實(shí)現(xiàn)獲取網(wǎng)頁快照并生成縮略圖

    Shell腳本實(shí)現(xiàn)獲取網(wǎng)頁快照并生成縮略圖

    這篇文章主要介紹了Shell腳本實(shí)現(xiàn)獲取網(wǎng)頁快照并生成縮略圖,本文獲取網(wǎng)頁快照使用phantomjs、生成縮略圖使用ImageMagick,需要的朋友可以參考下
    2015-02-02
  • linux下socket編程常用頭文件(推薦)

    linux下socket編程常用頭文件(推薦)

    這篇文章主要介紹了linux下socket編程常用頭文件,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-10-10
  • Shell腳本中$符號(hào)的嵌套使用方法小結(jié)

    Shell腳本中$符號(hào)的嵌套使用方法小結(jié)

    在編寫Shell腳本時(shí),通過嵌套使用$符號(hào),間接獲取變量或表達(dá)式的值的具體方法,文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2023-05-05
  • Shell處理帶空格的文件名的方法

    Shell處理帶空格的文件名的方法

    這篇文章主要介紹了Shell處理帶空格的文件名的方法,文中總結(jié)了若干處理帶空格的文件名的技巧,需要的朋友可以參考下
    2014-06-06

最新評(píng)論