Alat termudah di sini mungkin sed. Untuk memasukkan b.txtke dalam a.txtsetelah baris ke-5, Anda bisa menulis:
sed '5r b.txt' a.txt
sedmembaca file yang ditentukan sebagai argumen ( a.txt) baris demi baris. Semua baris direproduksi dalam output sama seperti yang muncul di input, kecuali jika mereka diubah oleh perintah.
Ini 5adalah alamat (nomor baris) di mana perintah berikut harus dijalankan. Perintah yang kita gunakan adalah r, yang mengambil nama file sebagai argumen (di sini b.txt), membacanya sepenuhnya dan memasukkannya ke dalam output setelah baris saat ini.
Seperti berdiri di atas, sedbaris perintah ini hanya akan mencetak output ke terminal, tanpa menulis ke file apa pun. Anda dapat mengarahkannya ke file baru (bukan file input mana pun!) Menggunakan pengalihan output Bash:
sed '5r b.txt' a.txt > c.txt
Atau Anda dapat langsung mengubah luar file input a.txtdengan menggunakan sed's -i(untuk 'di tempat') switch. Jika Anda menuliskannya -i.bak, itu akan membuat salinan cadangan dari file input asli dengan akhiran .bakpertama:
sed -i '5r b.txt' a.txt
Sebuah contoh:
$ cat a.txt
January
February
March
April
May
October
November
December
$ cat b.txt
June
July
August
September
$ sed '5r b.txt' a.txt
January
February
March
April
May
June
July
August
September
October
November
December