Dalam artikel ini, kita akan melihat berbagai cara untuk menambahkan header record atau trailer record ke file.
Mari kita pertimbangkan sebuah file, file1.
$ cat file1 apple orange grapes banana
Menambahkan baris ke awal file (header)
1. Untuk menambahkan catatan header menggunakan sed:
$ sed '1i some text at the beginning' file1 some text at the beginning apple orange grapes banana
'1i' di sed menyertakan (i) baris beberapa teks di awal hanya sebelum baris pertama (1) file. Perintah di atas menampilkan konten file bersama dengan header tanpa memperbarui file. Untuk memperbarui file asli itu sendiri, gunakan opsi -i dari sed seperti yang ditunjukkan di bawah ini:
$ sed -i.bkp '1i some text at the beginning' file1
Opsi -i.bkp membuat file cadangan bernama file1.bkp sebelum melakukan perubahan apa pun pada file asli. Ekstensi .bkp bisa apa saja sesuai pilihan Anda.
2. Anda juga dapat menggunakan contoh sed ini untuk menyisipkan baris header:
$ sed '1s/^/some text at the beginning\n/' file1
'1' menunjukkan nomor baris yang hanya akan dicocokkan saat melakukan substitusi dengan perintah 's'. Simbol '^' menunjukkan awal baris. Perhatikan juga carriage return '\n' yang ditambahkan di akhir, yang membantu mencetak baris baru setelah penggantian.
3. Anda juga dapat menggunakan perintah cat dengan pernyataan bash printf untuk menambahkan baris di awal file.
$ printf '%b' 'some text at the beginning\n' | cat - file1
4. Untuk menambahkan catatan header ke file menggunakan awk:
$ awk 'BEGIN{print "some text at the beginning"}1' file1 some text at the beginning apple orange grapes banana
MULAI pernyataan di awk membuat pernyataan beberapa teks di awal untuk dicetak sebelum memproses file, dan karenanya header muncul di output. Angka 1 menunjukkan untuk mencetak setiap baris file.
Menambahkan baris di akhir file (trailer)
1. Yang paling mudah dari semua perintah di sini adalah sederhana menggunakan pengalihan untuk menambahkan baris di akhir file. Misalnya:
$ echo "some text at the end" >> file1
2. Untuk menambahkan rekaman cuplikan ke file menggunakan sed:
$ sed '$a some text at the end' file1 apple orange grapes banana some text at the end
$a membuat sed untuk menambahkan(a) pernyataan beberapa teks di akhir hanya setelah baris terakhir($) file.
3. Untuk menambahkan rekaman cuplikan ke file menggunakan awk:
$ awk '1;END{print "some text at the end"}' file apple orange grapes banana some text at the end
AKHIR label membuat pernyataan cetak untuk dicetak hanya setelah file diproses. 1 adalah untuk mencetak setiap baris. 1 sebenarnya berarti benar.
digunakan di MAC OSX
sed berperilaku sedikit berbeda pada MAC OS, dibandingkan dengan sed GNU. Anda dapat mencoba contoh sed di bawah ini untuk menambahkan baris header ke file di MAC.
$ sed -i '.bak' '1s/^/some text at the beginning\'$'\n/g' file1