GNU/Linux >> Linux の 問題 >  >> Linux

Linuxsedコマンドの使用例と例

Sedは、Stream EDitorの略で、ファイルに対してテキストの変換と操作を実行するために使用されるコマンドです。これらの変換の一部には、テキストの検索と置換が含まれます。 Linux sedコマンドを使用すると、テキストファイルを開かなくても操作および編集できます。このチュートリアルでは、sedコマンドを使用してテキストファイルを操作する方法を学習します。

Linuxsedコマンド構文

$ sed  {OPTIONS} filename

このチュートリアルでは、linuxgeek.txtを使用します 参照ファイルとしてのファイル。

# cat linuxgeek.txt

出力

1。文字列の置換または置換

ほとんどの場合、sedコマンドはテキストの文字列を置き換えるために使用されます。

以下のコマンドは、「 Linux」を置き換えます ‘と‘ Unix ‘。

# sed 's/Linux/Unix/' linuxgeek.txt
  • s コマンドには置換インジケーターがあります。
  • / 区切り文字です
  • Linux 検索語です
  • unix 置換用語です

デフォルトでは、sedコマンドはの最初の出現のみを置き換えます 。後続のオカレンスは置換または置換されません。

出力

2。行のn番目のオカレンスを置換または置換する

行の2番目の文字列オカレンスを置き換える場合は、/2を使用します 示されているようにフラグを立てます。

# sed 's/Linux/Unix/2' linuxgeek.txt

出力

3。ファイル内のパターンのすべての出現箇所を置換または置換する

ファイル内の検索パターンのすべての出現箇所を置き換えるには、/gを使用します 国旗。 /g はグローバルな代替品です。

# sed 's/Linux/Unix/g' linuxgeek.txt

出力

4。特定の行でのみ出現する文字列をすべて置換または置換する

特定の行、たとえば2行目の文字列のすべての出現箇所を置き換える場合は、以下の構文を使用します

# sed '2 s/Linux/Unix/g' linuxgeek.txt

出力

5。特定の行範囲の文字列を置換または置換する

文字列置換が発生する行の範囲を指定する場合は、以下の例を使用してください。この例では、1〜3行目から置換を実行するように指示しています

# sed '1,3 s/Linux/Unix/g' linuxgeek.txt

出力

さらに、図のように、特定の行からファイルの最後までテキストを置き換えることができます

# sed '2,$ s/Linux/Unix/g' linuxgeek.txt

このコマンドは、ファイルの2行目から最後の行までのすべてのオカレンスを置き換えます。

出力

6。すべての単語の最初の文字を括弧で囲みます

次の例は、行の単語の最初のすべての文字に括弧を付ける方法を示しています。


$ echo "Hey Guys, Welcome To Linux Operating System" | sed 's/\(\b[A-Z]\)/\(\1\)/g'

出力

7。ファイルから行を削除する

linux sedコマンドを使用して、ファイル内の行を削除することもできます。

構文:


$ sed 'nd' filename.txt

ファイルの3行目を削除するには、

を実行します。
$ sed '3d' linuxgeek.txt

出力

3行目から5行目までの行の範囲を削除するには、次のコマンドを実行します。

$ sed '3,5d' linuxgeek.txt

出力


Linux
  1. Linux Sedコマンド:使用法と例

  2. 例を含むLinuxTeeコマンド

  3. LinuxでのJQコマンドと例

  1. 例を含むwcLinuxコマンド

  2. Linuxのソートコマンドと例

  3. Linuxでのエコーコマンド(例付き)

  1. Linuxでのmanコマンドと例

  2. LinuxでのAWKコマンドと例

  3. LinuxでのCurlコマンドと例