sed コマンドを使用して文字列を置換する Linux チュートリアル

sed コマンドを使用して文字列を置換する Linux チュートリアル

文字列を置き換えるには、次の形式を使用する必要があります。

$ sed s/置換対象文字列/置換文字列/ファイル名

以下では、文字列「sample.txt」を「appleorangemelon」に置き換えます。

$ sed s/オレンジ/オレンジ/sample.txt

実行結果は

リンゴオレンジメロン

文字列を置換して出力します。

また、以下のようにcatコマンドの後にsedコマンドを「|」でつなげても同じ結果になります。

$ cat sample.txt | sed s/apple/APPLE/

sed コマンドは文字列を置き換えて出力するだけであり、実際のファイルの内容は書き換えないことに注意してください。

置換されたコンテンツをテキスト内に保持したい場合は、リダイレクト「>」を使用します。

sed コマンドで使用されるオプション

コマンドオプション例示する
-e指定されたスクリプトに置き換えます
-f ファイル指定されたファイルに記述されたスクリプトファイルの内容を追加します
-r拡張正規表現の使用

sedコマンドの使用

すべての行を置換

前述の形式では、1 行に複数の置換対象文字列に一致する文字列があったとしても、最初に一致した文字列のみが置換されます。

したがって、一致する文字列をすべて置き換えるには、次のようにします。

$ sed -es /apple/APPLE/g sample.txt

実行結果は

アップルオレンジメロンアップル

行の先頭と末尾を置換する

$ sed -e "s/^apple/APPLE/" サンプル.txt
$ sed -e "s/apple\$/APPLE/" サンプル.txt

複数の部分文字列を置換する場合は、複数のスクリプトを指定できます。

$ sed -e "s/apple/APPLE/" -e "s/orange/ORANGE/" サンプル.txt

行を削除する

指定した行を削除するには「d」を指定します。たとえば、2 行目を削除するには、「2d」と入力します。

$ sed -e '2d' サンプル.txt

また、複数行を削除することもできます。以下は1行目から3行目までを削除する例です。

$ sed -e '1,3d' サンプル2.txt

以下もご興味があるかもしれません:
  • Linux sed コマンドの詳細な説明 (推奨)
  • sedコマンドを使用して、キーワードがある行を検索し、その前の最初の文字を削除します。
  • Sedコマンドと正規表現メタ文字の使用方法の詳細な説明
  • 一定期間から現在までのシステムログのsedコマンドを表示する
  • 1日1シェルコマンド Linuxテキストコンテンツ操作シリーズ - sedコマンド詳細説明
  • Linux での sed コマンドの使用
  • Linuxにおけるsedコマンドの使い方と注意点のまとめ
  • Linuxでよく使われるsedコマンド
  • Linuxでkv設定ファイルを変更するにはsedコマンドを使用します
  • sed コマンドを使用してファイルの特定の行を効率的に削除する方法

<<:  Apple 電卓の JS 実装

>>:  MySql 自動切り捨て例の詳細な説明

推薦する

JavaScript は最大値と最小値のアルゴリズムを通じて AI 三目並べゲームを実装します

では、早速スクリーンショットを実行してみましょう。黒い駒はプレイヤーの位置、赤い駒はコンピュータの位...

Vueは商品詳細ページの虫眼鏡機能を実装します

この記事では、商品詳細ページの虫眼鏡を実装するためのVueの具体的なコードを参考までに共有します。具...

Docker クリーニングの一般的な方法と問題点

大規模な開発に Docker を使用する場合でも、クリーンアップ戦略がなければ、ディスクがすぐにいっ...

Tomcatがセッションを管理する方法の例

ConcurrentHashMapを学習しましたが、どのように適用すればよいかわかりませんか? To...

Tomcat 初回展開 Web プロジェクト プロセス図

独自のWebプロジェクトをtomcatディレクトリの下のwebappsディレクトリに配置します。 R...

ES6 の Set および WeakSet コレクションの詳細な説明

目次セットは値が重複しない特別なコレクションです。セットコレクション基本API独自の価値判断セットを...

Eclipse は Tomcat を構成しますが、Tomcat には無効なポート解決策があります

目次1. EclipseがTomcatを構成する2. Tomcat の無効なポートの解決方法方法1:...

Vite と Vue CLI の長所と短所

Vue エコシステムには Vite と呼ばれる新しいビルド ツールがあり、Vue CLI よりも 1...

Linux deb パッケージの解凍、変更、その他の操作方法のコード例

さまざまな理由により、debパッケージ内のさまざまなファイルの内容を直接変更する必要がある場合があり...

HTML入力で値が変更されたときにリスナーイベントを追加することの簡単な分析

達成される効果多くの場合、入力ボックスの値の変化をリアルタイムで監視し、ブラウザを誘導してウェブサイ...

Ubuntuはカーネルモジュールをコンパイルし、その内容はシステムログに反映されます。

目次1.Linuxログインインターフェース2. コードを書く3. Makefileを書く4. コンパ...

CSS Houdini でダイナミックな波効果を実現

CSS Houdini は、CSS 分野における最もエキサイティングなイノベーションとして知られてい...

CSS のみを使用して折りたたまれたヘッダー効果を作成する方法の例コード

折りたたまれたヘッダーは、特別オファーや重要なお知らせなど、ユーザーにとって重要な情報を表示するのに...

自動ヘルスレポートを実現するDocker+Selenium方式

この記事では、ある大学の健康報告システムを例に、Web 側の自動化操作を完成させます。使用したテクノ...

JavaScript ステートメントの一般的な for ループの詳細な説明

JavaScript には、for、for in、for of、forEach ループなど、多くのル...