SED 功能和示例


SED 是 Stream Editor 的縮寫,是一個 Linux 命令,用於對文件執行各種操作,例如文本替換、插入和文本搜索。這個命令非常容易使用,如果使用得當,可以得到驚人的結果。因此,本文介紹了 SED 命令的一些功能,並提供了一些示例來幫助您了解其用法。

SED命令功能:

下面列出了 SED 命令的一些最重要的功能。

  • 此命令用於在不打開文件的情況下修改文件,從而加快整個過程。
  • 它還可以使用不同的正則表達式進行修改,這些正則表達式可用於輕鬆搜索不同的模式。
  • 它還可以用於在不使用文件的情況下更改終端中的字符串。

這裡要提到的另一點是 SED 命令區分大小寫。您使用此命令更改或替換的任何單詞都必須寫在正確的上下文中。否則它將不起作用。

示例 sed 命令:

在Linux上使用SED命令,需要通過四個例子:在繼續這些示例之前,我想分享所有這些示例使用的文本文件。要查看此文件的內容,請使用“cat”命令,如下所示:

$ cat file.txt

此示例文本文件的內容如下圖所示。

示例 #1:替換文件每一行中第一次出現的單詞

此示例使用 SED 命令替換示例文本文件每一行中第一次出現的單詞。為此,我使用了 SED 命令,如下所示:

$ sed ‘s/Hello/Hi/’ file.txt

此命令使用“s”運算符指定發生的替換。 “你好”是你要替換的詞,“你好”是你要替換的詞。 “file.txt”是執行此操作的文件的名稱。

運行此命令後,其輸出將立即顯示在終端中,如下圖所示。您可以輕鬆驗證此命令是否成功替換了目標文本文件每一行中第一次出現的指定單詞。

示例 #2:替換文件每一行中第 n 次出現的單詞

此示例使用 SED 命令替換示例文本文件每一行中第 n 次出現的單詞。為此,我們使用 SED 命令如下:

$ sed ‘s/Hello/Hi/2’ file.txt

使用此命令將文件每一行中第二次出現的單詞“Hello”替換為單詞“Hi”。您可以根據要替換給定單詞的位置,將“2”替換為其他數字。

以下輸出顯示指定單詞的第二次出現已成功替換文件的每一行。

示例 #3:替換文件中所有出現的單詞

現在一次替換示例文本文件中的所有單詞。為此,請使用 SED 命令,如下所示。

$ sed ‘s/Hello/Hi/g’ file.txt

這裡我們使用 SED 命令的“g”標誌對指定的詞進行全局替換。該詞的所有出現都將立即被替換。

此命令的輸出如下圖所示。從此圖像中,您可以看到指定單詞的所有匹配項均已成功替換。

示例 #4:替換文件特定行中首次出現的單詞

最後,此示例使用 SED 命令僅替換指定行中第一次出現的指定單詞。為此,請按如下方式使用 SED 命令:

$ sed ‘2 s/Hello/Hi/’ file.txt

在此命令中,我們使用了數字“2”,因此它僅替換示例文本文件第二行中指定單詞的第一次出現。您可以將其替換為您選擇的任何其他數字,具體取決於您要替換的行的行號。

以下輸出顯示示例文本文件第二行中第一次出現的指定單詞已成功替換。

結論是

在本教程中,我們將探討 Linux 中 SED 命令的功能,並提供一些有用的示例來進一步說明其用法。為此,我簡要介紹了這個命令的工作原理,然後介紹了它的一些顯著特點。最後,我給出了四個不同的例子來展示如何使用這個命令。通過閱讀這些示例,您可以快速了解如何在 Linux 中使用 SED 命令。