Linuxでファイルから行を置換する方法
sedコマンドはLinuxでファイル内の1行を置換するために使用できます。sedはテキスト形式のファイルの処理に使用できるストリームエディタです。
ファイルの一行を置換するには、以下のコマンドを使用します。
sed -i '行号s/原内容/新内容/' 文件名
置き換えたい行の情報として、行番号、元の内容、新しい内容、操作対象のファイル名が必要です。
例えば、「example.txt」の3行目を「Hello, world!」に置き換えるには、以下のコマンドで置き換えられます。
sed -i '3s/.*/Hello, world!/' example.txt
上記の命令は、example.txt ファイルの 3 行目の内容を “Hello, world!” に置き換えます。
-i オプションを使うと、ファイル内容を直接変更します。元ファイルを変更せず、入れ替え後の内容を新しいファイルに出力したい場合は、-i オプションを削除します。例:
sed '行号s/原内容/新内容/' 原文件名 > 新文件名
たとえば、ファイル example.txt の 3 行目の内容を “Hello, world!” に置き換え、置換後の内容をファイル new_example.txt に保存するには、次のコマンドを使用できます。
sed '3s/.*/Hello, world!/' example.txt > new_example.txt
上記の `sed` コマンドは、`example.txt` ファイルの 3 行目を “Hello, world!” に置き換えて、置き換えた内容を `new_example.txt` ファイルに保存します。