如何在終端中查找和替換多個文件中的文本

查找和替換 使用 文字編輯器 更基本。 但是當您需要執行相同的任務時會發生什麼 同時在多個文件中?

好吧,那裡的事情變得複雜了……或者沒有那麼多。


在下面的示例中,我們將使用sed在所有擴展名為.txt且位於/ home / user / myfolder /文件夾中的文件中,將所有出現的單詞“ mongo”替換為單詞“ aurelio”。

查找/ home / user / myfolder / -name * .txt -exec sed -i“ s / mongo / aurelio / g” {} \;

這麼簡單

在結束之前,值得一提的是,一些文本編輯器允許使用圖形界面執行此操作。 其中,值得重點介紹Jedit,Geany,Regexxer等。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   TSH 他說:

    偉大

  2.   懷疑的 他說:

    我使用Gedit

    1.    米龍 他說:

      gedit多個文件??? 如???

  3.   羅恩 他說:

    我如何在ai之間放置一個grep?

    我需要做的是,在首頁中搜索所有名為index.html且包含單詞“ XXXXXXX”的文件,然後將其替換為“ YYYYYYYYYY”,因為可以這樣做,以便僅在其中搜索實際具有字符串的文件?

    非常感謝 !

  4.   梅爾霍斯 他說:

    我也使用Gedit,但非常感謝

  5.   天使加西亞 他說:

    您缺少exec的參數。 正確的代碼是:
    查找/ home / user / myfolder / -name * .txt -exec sed -i“ s / mongo / aurelio / g” {} \;

    問候😀

    1.    讓我們使用linux 他說:

      你是對的! 謝謝!
      我已經改正了。 :=)

  6.   加多 他說:

    我只是試過這個(作為ROOT):

    查找/ usr / share / icons / ACYL-Allgray / -name * .svg -exec sed -i“ s / 666666/000000 / g” {} \;

    更改整個圖標集的顏色。 事實是這是一個非常強大的命令,通常此任務會使我花費數小時來逐個文件進行編輯。

  7.   埃德蒙 他說:

    在centos linux中,根據行號(在我的情況下為第2行(2i)),在幾個文件中插入文本

    查找/主頁// public_html / res / -name -exec sed -i“ 2i \;” {} \;

    1.    埃德蒙 他說:

      並非所有代碼都出來了,所以我重新提交了:

      查找/ home / user / public_html / res / -name filename.ext -exec sed -i“ 2i \要插入的文本” {} \;