sed

Cara Memasukkan Garis setelah Pertandingan menggunakan 'sed'?

Cara Memasukkan Garis setelah Pertandingan menggunakan 'sed'?

Salah satu perintah Linux yang berguna dan kuat adalah perintah "sed". Perintah ini digunakan untuk melakukan berbagai jenis tugas di Linux, seperti memasukkan, mengemas kini, dan menghapus teks atau baris tertentu berdasarkan padanan. Anda dapat memasukkan teks dalam string atau file dengan cara yang berbeda dengan menggunakan perintah "sed".

Cara memasukkan garis setelah mencari padanan dalam rentetan atau garis ditunjukkan dalam tutorial ini.

Masukkan garis dalam Rentetan

Garis baru dapat disisipkan setelah nilai string menggunakan perintah "sed" jika pola yang ditentukan dalam perintah sesuai dengan bagian nilai string.

Contoh berikut menunjukkan bagaimana baris baru dapat ditambahkan setelah nilai rentetan jika rentetan tertentu ada di mana saja dalam nilai rentetan.

Contoh-1: Masukkan garis dalam rentetan setelah mencari padanan

Perintah berikut akan mencari "inng" dalam rentetan, "Saya suka pengaturcaraan", dan sebaris teks, "Adakah anda suka pengaturcaraan?"Akan dimasukkan selepas rentetan jika rentetan pencarian ada.

Di sini, watak "&" digunakan untuk memasukkan garis selepas rentetan.

$ echo "Saya suka pengaturcaraan."| sed 's / inng / & Adakah anda suka pengaturcaraan?/ '

Output berikut menunjukkan bahawa "inng" tidak ada dalam rentetan dan tidak ada garis yang dimasukkan setelah tali.


Perintah berikut akan mencari "ing."Dalam rentetan," Saya suka pengaturcaraan "dan terdapat dalam rentetan.

$ echo "Saya suka pengaturcaraan."| sed / ing./ & Adakah anda suka pengaturcaraan?/ '

Output berikut menunjukkan bahawa baris baru ditambahkan selepas rentetan.

Masukkan baris dalam Fail

Terdapat dua cara untuk memasukkan baris setelah pertandingan dijumpai dalam fail yang disebutkan di bawah. Apabila perintah "sed" digunakan tanpa opsi "-i", maka konten file akan tetap tidak berubah, dan output akan menunjukkan kandungan file dengan baris baru yang dimasukkan. Anda harus menggunakan opsi "-i" dengan perintah "sed" untuk memasukkan baris baru secara permanen dalam file jika pola pencocokan ada di file.

A. Menggunakan "a" dalam perintah "sed"

The "a" dapat digunakan dalam pola pencarian "sed" untuk menambahkan satu atau lebih baris dalam file setelah garis di mana pola pencarian sesuai atau setelah nomor baris tertentu.

B. Menggunakan "i" dalam perintah "sed"

The "i" dapat digunakan dalam pola pencarian perintah "sed" untuk memasukkan satu atau lebih baris dalam file sebelum garis di mana corak pencarian sesuai.

Masukkan baris dalam fail berdasarkan corak:

Buat fail teks yang dibatasi tab bernama produk.txt dengan kandungan berikut untuk menunjukkan kegunaan bendera di atas dalam perintah "sed".

produk.txt

Nama ID
01 Krim cambuk
02 Serbuk Koko
03 Gula
04 Telur
05 Tepung

Contoh-2: Masukkan garis setelah nombor garis tertentu menggunakan "a"

Perintah berikut menunjukkan bagaimana barisan baru dapat ditambahkan, setelah bilangan baris produk tertentu.file txt, berdasarkan pola yang digunakan dalam perintah "sed".

Di sini, arahan pertama akan menunjukkan kandungan fail yang ada. Perintah "sed" akan menambahkan teks, "B01 Baking powder", setelah dua baris pertama fail. Perintah terakhir digunakan untuk memeriksa bahawa kandungan fail diubah atau tidak.

$ produk kucing.txt
$ sed '2 a b01 \ tBakar serbuk' produk.txt
$ produk kucing.txt

Output berikut akan muncul setelah menjalankan perintah di atas.

Contoh-3: Masukkan baris selepas baris terakhir menggunakan "a"

Perintah berikut menunjukkan cara untuk menambahkan baris baru selepas baris terakhir fail. Perintah pertama dan terakhir menunjukkan kandungan fail yang ada sebelum dan sesudah melaksanakan perintah "sed". Simbol "$" digunakan dalam pola perintah "sed" untuk menyebut baris terakhir file.

$ produk kucing.txt
$ sed '$ a b01 \ tBakar serbuk' produk.txt
$ produk kucing.txt

Output berikut akan muncul setelah menjalankan perintah di atas.

Contoh-4: Masukkan baris di mana sahaja dalam fail setelah mencocokkan corak menggunakan "a"

Perintah "sed" berikut menunjukkan bagaimana baris baru dapat ditambahkan di mana saja dalam fail berdasarkan corak yang sepadan. Pola yang digunakan dalam perintah "sed" akan mencari baris apa pun yang dimulai dengan "s01", dan menambahkan rentetan baru setelahnya. Baris keempat fail bermula dengan "s01", dan baris baru akan dimasukkan setelah baris itu.

$ produk kucing.txt
$ sed '/ ^ s01.* / a b01 \ tBaking Powder produk.txt
$ produk kucing.txt

Output berikut akan muncul setelah menjalankan perintah.


Perintah "sed" berikut akan mencari mana-mana baris yang diakhiri dengan "Serbuk" dan memasukkan baris baru setelahnya. Baris ketiga fail diakhiri dengan "Serbuk". Jadi, baris baru akan dimasukkan selepas baris itu.

$ produk kucing.txt
$ sed '/ Serbuk $ / a b01 \ tBaking Powder produk'.txt
$ produk kucing.txt

Output berikut akan muncul setelah menjalankan perintah di atas.

Contoh-5: Masukkan beberapa baris setelah corak pemadanan menggunakan "a"

Perintah "sed" berikut menunjukkan cara untuk menambahkan beberapa baris di dalam kandungan fail berdasarkan corak yang sepadan.

Di sini, dua baris akan ditambah selepas baris ketiga, mengikut corak.

$ produk kucing.txt
$ sed '/ ^ [a-c] / a b01 \ tBaking Powder \ nb02 \ tBakar Soda' produk.txt
$ produk kucing.txt

Output berikut akan muncul setelah menjalankan perintah di atas.

Contoh-6: Masukkan garis setelah mencocokkan corak menggunakan "I"

$ produk kucing.txt
produk $ sed '/ cream / i b01 \ tBaking Powder'.txt
$ produk kucing.txt

Output berikut akan muncul setelah menjalankan perintah di atas.

Contoh-7: Masukkan garis secara kekal setelah corak pemadanan menggunakan pilihan "-i"

Perintah "sed" berikut menunjukkan cara mengubah kandungan fail secara kekal. Pilihan "i" digunakan dengan perintah "sed" untuk memasukkan baris baru dalam file berdasarkan pola.

$ produk kucing.txt
$ sed -i '/ e $ / a g01 \ tGhee' produk.txt
$ produk kucing.txt

Output berikut akan muncul setelah menjalankan perintah di atas.

Kesimpulan:

Cara memasukkan dua atau lebih baris dalam fail dengan menggunakan perintah "sed" dengan corak telah ditunjukkan dalam tutorial ini untuk membantu pembaca menerapkan perintah ini untuk memasukkan baris dalam sementara atau secara kekal berdasarkan corak.

Cara menangkap dan streaming sesi permainan anda di Linux
Pada masa lalu, bermain permainan hanya dianggap sebagai hobi, tetapi seiring dengan berjalannya waktu, industri permainan menyaksikan pertumbuhan yan...
Permainan Terbaik untuk Dimainkan dengan Penjejakan Tangan
Oculus Quest baru-baru ini memperkenalkan idea hebat penjejakan tangan tanpa pengawal. Dengan jumlah permainan dan aktiviti yang semakin meningkat yan...
Cara Menunjukkan Overlay OSD dalam Aplikasi dan Permainan Linux Skrin Penuh
Bermain permainan skrin penuh atau menggunakan aplikasi dalam mod skrin penuh bebas gangguan dapat memisahkan anda dari maklumat sistem yang relevan y...