How to use sed in Linux to batch replace file contents? Linuxでsedを使用してファイルの内容を一括置換する方法は何ですか?
Linuxでは、sedコマンドを使用してファイルの内容を一括で置換することができます。sedはテキストを置換、削除、挿入などの操作を実行できるストリームエディタです。
sedコマンドを使用してファイルの内容を一括で置換する基本の構文は以下の通りです:
sed 's/原文本/新文本/g' 文件名
その中で、元のテキストは置換される文字列であり、新しいテキストは置換後の文字列であり、gはグローバルな置換を表す(つまり、1行に複数回出現する元のテキストはすべて置換されます)。
例えば、file.txtという名前のテキストファイルがあり、その内容は次のようになっています:
Hello, world!
This is a test.
“Hello”を”Greetings”に置き換えるために、以下のコマンドを使用できます:
sed 's/Hello/Greetings/g' file.txt
そのコマンドを実行すると、file.txtの内容が以下のようになります:
Greetings, world!
This is a test.
複数のファイルのテキストを置き換える必要がある場合は、ワイルドカードを使用してファイル名を指定することができます。たとえば、すべて”.txt”で終わるファイルの中のテキストを置き換えたい場合は、次のコマンドを使用できます。
sed 's/原文本/新文本/g' *.txt
すべての”.txt”で終わるファイル内の元のテキストを新しいテキストに置き換えることができます。