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 でオブジェクトのプロパティを削除する方法

1. 削除delete は、オブジェクトのプロパティを残さずに削除する唯一の方法ですが、その「代替」...

mysql-8.0.19-winx64 をインストールしてログインするための初心者向けチュートリアル (初心者必読)

目次1. インストールパッケージ(64ビット)をダウンロードする2. MySQLデータベースをインス...

vue+elementUI で埋め込みテーブルを実装する方法の例

大学 4 年生のときのインターンシップ中に、表内のデータの番号をクリックすると、そのデータの下に新し...

22 Vue 最適化のヒント (プロジェクトの実践)

目次コードの最適化v-for でキーを使用するv-if/v-else-if/v-else でキーを使...

WeChatアプレットのスクロールビューの改行問題を解決する

今日、小さなプログラムを書いていたときに、スクロールビューを使用したのですが、スクロールビュー内のテ...

プロジェクトにおけるVue3のロジック抽出とフィールド表示についての簡単な説明

目次論理階層化異なる地域から事業を分離するこれを実行する利点このようなシナリオにどう対処するか最適化...

Founder フォント ライブラリの中国語と英語のファイル名比較表

Founder Type Library は、Founder Type Library ビジネス チ...

Dockerコンテナのk8sデプロイメントの実装

環境: (docker、k8s クラスター)、前回 docker で起動した Java プログラムの...

デジタル時計効果を実現するJavaScript

この記事では、デジタル時計効果を実現するためのJavaScriptの具体的なコードを参考までに紹介し...

企業サイトとコラム辞典 中国語と英語の比較 中国語と英語のバイリンガル企業サイトを作る仲間は

名前キャラクター名前キャラクター情報ニューステクノロジー技術スキンケアスキンケア補う補う香水香水化粧...

ウェブページサイズに関する調査

<br />統計によると、Web ページの平均サイズは 2003 年以降 3 倍に増加し...

Tomcat のメモリ構成の正しい姿勢についての簡単な説明

1. 背景多くのブログや記事を読みましたが、JVM のメモリ割り当て方法に関する包括的な記事は見つか...

Nodejs と Socket.IO を組み合わせて Websocket の即時通信を実現

目次WebSocketを使用する理由ソケット.ioオープンソースプロジェクト効果プレビューアプリイン...

MySQL デッドロックのトラブルシューティング プロセスの完全な記録

序文これまで遭遇したデータベースのデッドロックはすべて、バッチ更新中のロック順序の不一致が原因でした...

Linuxのファイル権限の詳細な紹介

Linux の優れた点は、マルチユーザー、マルチタスク システムにあります。 Linux では通常、...