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

使用する上位20のsedコマンド

皆さん、こんにちは。 sedコマンドは、世界中のシステム管理者によって酷使されているコマンドです。これは基本的に、単一のコマンドでテキストファイル内のテキストをテキストに置き換えるために使用されます。そのため、本日は、sedコマンドのトップ20を紹介します。このために、最も有用で一般的なものを見ていきます。

使用するsedコマンドのトップ20

文字列を別の文字列に置き換えます

sedコマンドは、文字列を置き換えるために使用されます。ただし、柔軟性が非常に高いため、ニーズに合わせて実行をカスタマイズできます。

文字列を変更するテキストファイルmacOS Linuxへ 実行する必要があります

sed 's/macOS/Linux/' [file]

次に、必要な文字列でコマンドを調整できます。

2.-文字列の特定の出現回数を置き換えます

上記のコマンドは、文字列を1回だけ置き換えます。文字列が置き換えられる順序を指定できます。

sed 's/macOS/Linux/2' [file]

この場合、2番目のオカレンスのみが置き換えられます。

3.-文字列のすべての出現箇所を置き換えます

sed 's/macOS/Linux/g' [file]

4.-特定の行番号の文字列を置き換えます。

もう1つの便利なオプションは、行番号の文字列を置き換えることです。これは、ファイルをよく知っている場合に役立ちます。

sed '[line] s/macOS/Linux/' [file]

たとえば、3行目の文字列を置き換える場合。

sed '3 s/macOS/Linux/' [file]

5.-範囲内の文字を置き換える

文字を置き換えるが、ファイル内の指定された行範囲内にある。

sed '30,40 s/macOS/Linux/g' [file]

この場合、文字列は30行目と40行目の間でのみ置き換えられます。

6.-ファイルに改行を挿入する

空白の改行を挿入することもできます。これを実現するには、実行する必要があります。

sed G [file]

すべてが近接しているファイルで非常に役立ちます。

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

sedコマンドは文字列を置き換えるために使用されますが、実際には多くのことができます。それらの1つは、行を削除することです。この実行を行うには。

sed 'nd' [file]

nを置き換えます 削除する行の番号を指定します。

8.-特定の範囲の行を除くファイル全体を表示します。

行の範囲を除いたファイルを表示することもできます。

sed '20,35d' [file]

この場合、20行目から35行目を除くファイル全体が表示されます。

9.-ドキュメント内の特定の範囲の行を表示する

ファイル内の特定の範囲を表示する場合は、次のコマンドを実行する必要があります。

sed -n 'Ni,Nlp' [file]

Niを置き換える必要がある場所 開始行番号とNl 終わりとともに。

sed -n '5,15p' [file]

この場合、5行目から15行目の範囲が表示されます。

10.-テキストファイル内の一致する行を削除する

特定のテキスト文字列に一致する行を削除することもできます。

sed '/macOS/d' [file]

この場合、macOSという単語を含むすべての行 削除されます。

11.-ファイルの行番号を印刷します

コマンドsedを使用して、テキストファイルの行番号を印刷するには 。これを実現するには、次のコマンドを実行するだけです。

sed '=' [file]

このようにファイルを印刷すると、行番号が表示されます。

12.-指定した行を除くファイルのすべての行を削除します。

これで、指定した行を除くファイル内のすべての行を削除できます。

sed '15,21!d' [file]

このようにして、ファイルは15から21までの行を除くすべての行を削除します。

13.- sedを使用して、すべての大文字を小文字に置き換えます

テキストファイルを扱う場合は、大文字と小文字が常に関係します。したがって、sedを使用します すべての大文字を小文字に置き換えることができます。

sed 's/\(.*\)/\L\1/' [file]

14.-文字列で始まる行を削除します

特定の文字列で始まるすべての行を削除する場合は、次のようなものを実行できます

sed '/^macOS/d' [file] 

15.-1行から最後までの文字列のすべての出現箇所を置き換えます

この場合、特定の行から文字列の終わりまで、ある文字列を別の文字列に置き換えることができます

sed '3,$s/macOS/Linux/g' [file]

この場合、3行目を選択しましたが、どの行でもかまいません。

16.-ファイルから一連の行を印刷する

一連の行だけを印刷したい場合は、sedを使用して印刷することもできます。 次のように

sed -n '2,10p' [file]

この例では、2から10までのすべての行が印刷されます。

ファイルの各行の後の空白行を削除する

空白行を削除すると、構成ファイルやその他の処理が必要なファイルで非常に役立ちます。

これらの空白行を削除するには、実行できます

sed '/^$/d'[file]

それと同じくらい簡単です。

各単語の最初の文字を大文字にします

これは、最も便利で最も使用されるオプションの1つです。各単語の最初の文字を、大文字の同等の文字に置き換えることができます。

これを実現するには、このコマンドを実行するだけです

sed 's/\([a-z]\)\([a-zA-Z0-9]*\)/\u\1\2/g'

楽です。

ファイルの最後の行を削除します

構成ファイルに加える必要のある変更があり、通常は最後の行に配置します。削除したい場合はどうなりますか?さて、あなたは実行することによってファイルの最後の行を削除することができます

sed '$d' [file]

20.-sedコマンドのヘルプを表示する

最後に、コマンドexecuteのヘルプを参照できます

sed --help

そして、このような出力画面が表示されます。

読んでくれてありがとう。あなたがそれを気に入ってくれて、あなたの仕事に役立つことを願っています。

sedコマンドページ

その他の端末コマンド


Linux
  1. 2020年にLinuxを使用する5つの理由

  2. Bash履歴コマンドの使用方法

  3. sed を使用して構成ファイルの変数を置き換える方法は?

  1. 使用したことがない5つのLinuxコマンド

  2. LinuxでSed、ex、perlコマンドを使用してテキストを検索および置換する

  3. ファイル内の文字列を置き換える方法は?

  1. Sedを使用して複数行の文字列を置き換える方法は?

  2. SedまたはExを使用してブロック(複数行コード)を新しいテキストブロック(コード)に置き換える方法は?

  3. 複数行の Sed 置換