Pengguna baris perintah Linux sudah familiar dengan konsep operator redirection, yang dapat menulis output ke file, atau membaca input dari file.
Operator '>'
menulis output ke file baru, atau ke file yang sudah ada; dalam hal ini menghapus semua yang sebelumnya ada dalam file. Operator '>>'
di sisi lain menambahkan output di akhir file yang ada. Namun, tidak ada operator khusus untuk menulis teks baru ke awal file.
Hari ini, kita akan melihat dua cara untuk menambahkan teks ke awal file di Linux:satu dengan solusi, dan satu lagi dengan perintah.
Catatan :Ini adalah pendekatan yang baik untuk terlebih dahulu membuat cadangan file asli dan kemudian menambahkan teks baru ke file asli. Dengan cara ini jika terjadi kesalahan saat menggunakan perintah, kami selalu dapat memulihkan file cadangan. Misalnya. Anda cukup menyalin file bernama ‘file1 ' ke file lain bernama 'file1_bkp ' lalu tambahkan teks ke aslinya, yaitu 'file1 '.Menambahkan Teks ke Awal File Menggunakan Perintah echo dan cat
Seperti yang Anda ketahui, perintah echo mencetak apa pun yang diteruskan sebagai argumen ke output, sedangkan perintah cat mencetak isi file ke output.
Dengan demikian, kita dapat meneruskan teks baru untuk ditambahkan ke echo , berikan file ke cat, gabungkan dan tulis output ke file. Ini dapat dilakukan sebagai berikut:
$ x=`echo "New Text"; cat filename` $ echo "$x" > filename
Pada dasarnya, kami menggabungkan teks baru dan konten file yang ada, dan menyimpan konten baru dalam sebuah variabel. Kemudian, kita cukup mengeluarkan variabel dan mengarahkannya ke file yang sama.
$ cat samplefile.txt $ x=`echo "Name: John"; cat samplefile.txt` $ cat samplefile.txt
Seperti yang Anda lihat di atas, teks baru telah ditambahkan pada baris baru di awal file. Untuk menambahkan teks di awal baris pertama yang ada, gunakan -n
argumen gema.
$ x=`echo -n "New Text"; cat filename` $ echo "$x" > filenamePerhatikan bahwa meskipun Bash atau banyak shell lain yang tidak memiliki batasan ukuran variabel, namun ukurannya mungkin dibatasi berdasarkan lingkungan dan konfigurasi sistem. Oleh karena itu mungkin ada skenario ketika 'samplefile.txt ' adalah file yang berisi sejumlah besar data, dan variabel gagal menyimpan semuanya.
Tambahkan Teks ke Baris Pertama File Menggunakan Perintah sed
sed (kependekan dari ‘Editor Aliran ‘) adalah editor baris perintah di Linux, yang digunakan untuk melakukan operasi seperti menulis teks ke file, mencari dan mengganti, dll.
sed adalah perintah kompleks dengan banyak opsi untuk mengedit file dengan berbagai cara. Kami akan menggunakan fitur tertentu dari sed untuk menambahkan teks ke awal file.
Jalankan perintah berikut untuk menyisipkan teks pada baris baru di awal.
$ sed -i '1i New Text' filename
-i
argumen memberitahu sed untuk memodifikasi file itu sendiri. Tanpa itu, sed otomatis membuat salinan file dan melakukan semua modifikasi pada salinan.
String ‘1i Teks Baru’ artinya:'masukkan' string 'Teks Baru' pada '1' baris.
$ cat samplefile.txt $ sed -i '1i Introduction' samplefile.txt $ $ cat samplefile.txt
Sekali lagi, ini menambahkan konten baru pada baris baru di awal. Untuk menambahkan teks baru pada baris yang ada, jalankan:
$ sed -i '1s/^/New Text/' filename
Pada dasarnya, simbol eksponen (‘^’)
menandakan string nol. '1'
di awal menandakan bahwa sed harus mempertimbangkan string nol di awal baris 1 dan 's'
adalah sed perintah, untuk mengganti string. Di sini, string nol diganti dengan ‘Teks Baru ‘.
$ cat samplefile.txt $ sed -i '1s/^/Person/' samplefile.txt $ cat samplefile.txt
Kesimpulan
Kami mempelajari dua cara sederhana namun menarik untuk menambahkan teks baru ke awal file di Linux. Tentu saja, cara yang jelas untuk melakukan ini, jika harus dilakukan secara manual, adalah dengan memodifikasi file dengan editor file. Namun, dalam skrip, metode yang dibahas di sini dapat digunakan.
Terima kasih telah membaca dan beri tahu kami pendapat Anda di komentar di bawah!