ファイルの特定の行の下に情報を含むファイルを追加する方法を知りたいです。
file1.txt
たとえば、次の行があります。
line 1
line 2
line 3
そして、特定の場所にfile2.txt
追加したい情報があります。file1.txt
line 2
これについて何をすべきですか?
ベストアンサー1
SedのR[ead]コマンドの使用
あなたはsedを使用することができますrコマンドファイルをお読みください。たとえば、行番号に基づいて行を一致させるには、次のようにします。
sed '2 r /tmp/file2.txt' /tmp/file1.txt
またはコンテンツごとに行を一致させたい場合:
sed '/^line 2/ r /tmp/file2.txt' /tmp/file1.txt
これはGNU拡張に依存しない標準コマンドなので、さまざまなsed実装で動作する必要があります。
上記のコマンドは、標準出力に結果を出力します。ソースファイルを変更するには、-i
sedの後にこのオプションを追加します(このオプションはLinuxおよびCygwinでは機能しますが、すべてのUNIXシステムでは機能しません)。