sed

Bagaimana cara mengganti beberapa baris menggunakan perintah 'sed'

Bagaimana cara mengganti beberapa baris menggunakan perintah 'sed'
Terkadang perlu mengganti beberapa baris file dengan karakter atau teks tertentu. Perintah yang berbeda ada di Linux untuk mengganti beberapa baris file. Perintah 'sed' adalah salah satunya untuk melakukan jenis tugas ini. Bentuk lengkap dari 'sed' adalah Steam Editor, dan ini terutama digunakan untuk membaca dan mengonversi teks dengan cara yang berbeda dengan menggunakan ekspresi reguler. Bagaimana perintah ini dapat digunakan untuk mengganti beberapa baris file dengan cara yang berbeda dijelaskan dalam tutorial ini.

Lembar Cheat 'sed' yang umum digunakan:

Karakter yang paling umum digunakan dalam perintah 'sed' dijelaskan dalam tabel berikut:.

Karakter Tujuan
Sebuah Ini digunakan untuk menambahkan konten.
b Ini digunakan untuk konten percabangan.
c Ini digunakan untuk mengubah konten.
d Ini digunakan untuk menghapus baris file.
D Ini digunakan untuk menghapus baris pertama dari sebuah file.
g Itu digunakan untuk menyalin dari teks holding.
G Ini digunakan untuk menambahkan dari teks holding.
h Ini digunakan untuk menyalin dalam teks holding.
H Ini digunakan untuk menambahkan teks holding holding.
saya Digunakan untuk penyisipan.
saya Ini digunakan untuk mencetak baris pengganti.
tidak Ini digunakan untuk pergi ke baris berikutnya.
tidak Ini digunakan untuk menambahkan baris input berikutnya.
p Digunakan untuk mencetak.
P Ini digunakan untuk mencetak baris pertama.
q Itu digunakan untuk berhenti.
Q Ini digunakan untuk segera berhenti.
r Ini digunakan untuk membaca file.
R Ini digunakan untuk membaca baris dari file.
s Digunakan untuk menggantikan.
untuk Ini digunakan untuk menguji substitusi.
T Ini digunakan untuk menguji tanpa substitusi.
w Ini digunakan untuk menulis ke file.
W Ini digunakan untuk menulis baris ke file.
x Ini digunakan untuk menukar pola dan menahan.
kamu Digunakan untuk menerjemahkan.
z Ini digunakan untuk menghapus garis.
'=' Digunakan untuk mencetak nomor baris line.

Ganti beberapa baris dengan menggunakan perintah 'sed' dari terminal:

Bagaimana perintah 'sed' dapat digunakan untuk mengganti beberapa baris dari file dari terminal ditunjukkan di bagian tutorial ini. Buat file bernama sed.txt dengan konten berikut, uji perintah bagian ini.

sed.txt

Bentuk lengkap dari sed adalah "stream editor".

Ini adalah utilitas Unix yang digunakan untuk membaca dan mengonversi teks dalam format yang berbeda.

Ini dikembangkan oleh Lee E. McMahon.

Ini digunakan untuk pemrosesan teks.

Ini mendukung ekspresi reguler.

Contoh-1: Ganti Dua Garis Berturut-turut

Perintah 'sed' berikut akan menggantikan dua baris berturut-turut dengan baris lain. Di sini, opsi -z digunakan untuk mengganti baris berurutan dengan data nol sebelum menambahkan teks pengganti. Menurut perintah, 3rd dan 4ini baris file akan diganti dengan teks, 'Ini adalah alat yang sangat berguna'.

$ kucing sed.txt
$ sed -z 's/Ini dikembangkan oleh Lee E. McMahon.\nDigunakan untuk teks
pengolahan./Ini adalah alat yang sangat berguna./' sed.txt

Output berikut akan muncul setelah menjalankan perintah:.

Contoh-2: Ganti beberapa baris berdasarkan kecocokan dan bendera global

Perintah 'sed' berikut akan menggantikan semua baris yang dimulai dengan kata, 'Saya t' dengan kata, 'Baris ini diganti '.

$ kucing sed.txt
$ s/^It^.*/Baris ini diganti/g' sed.txt

Output berikut akan muncul setelah menjalankan perintah:. Tiga baris berisi kata 'Saya t' dalam file. Jadi, baris-baris ini telah diganti dengan teks pengganti.

Contoh-3: Ganti beberapa baris berdasarkan kecocokan dan perintah baris berikutnya

Perintah 'sed' berikut akan menggantikan kata,'aku s' dengan kata, 'dulu' dengan perintah baris berikutnya, 'n'.

$ kucing sed.txt
$ sed ' n;/adalah/ s/is/was/' sed.txt

Output berikut akan muncul setelah menjalankan perintah:. Sini, 'aku s' ada di 2dan dan 4ini baris file, dan baris ini dimodifikasi oleh kata 'dulu'.

Ganti beberapa baris dengan membuat file skrip 'sed':

Pada contoh sebelumnya, perintah 'sed' telah dieksekusi dari terminal. Tetapi ini adalah bahasa skrip, dan jika skrip berisi banyak pernyataan, maka lebih baik membuat file sed dengan skrip. Buat file teks bernama siswa.txt dengan konten berikut di mana skrip 'sed' akan diterapkan.

siswa.txt

ID: 111045
Nama: Robert
Departemen: CSE
Batch: 35
ID: 111876
Nama: Joseph
Jurusan: BBA
Batch: 27
ID: 111346
Nama: William
Departemen: CSE
Batch: 45
ID: 111654
Nama: Charles
Departemen: EEE
Batch: 41
ID: 111346
Nama: John
Departemen: CSE
Batch: 25
ID: 111746
Nama: Thomas
Departemen: CSE
Batch: 15

Contoh-4: Ganti beberapa baris file menggunakan file skrip 'sed'

Buat file sed bernama to menggantikan.sed dengan konten berikut untuk mengganti beberapa baris berdasarkan pola pencarian. Di sini, kata 'MTK' akan dicari di file teks, dan jika ada kecocokan, maka akan mencari lagi nomor 35 dan 15. Jika kecocokan kedua ada di file, maka itu akan diganti dengan angka 45.

menggantikan.sed

/CSE/
p;n;
/35/
s/35/45/;
p;d;

/15/
s/15/55/;
p;d;


hal;

Jalankan perintah berikut untuk memeriksa konten file yang ada. 'CSE' muncul empat kali dalam file teks. 35 dan 15 ada di dua tempat.

$ siswa kucing.txt

Perintah berikut akan menggantikan konten dari beberapa baris berdasarkan skrip sed.

$ sed -n -f ganti.sed siswa.txt

Output berikut akan muncul setelah menjalankan perintah:.

Kesimpulan

Berbagai cara untuk mengganti beberapa baris atau konten dari beberapa baris menggunakan perintah 'sed' telah ditunjukkan dalam tutorial ini. Bagaimana skrip 'sed' dapat dieksekusi dari file sed juga ditampilkan dalam tutorial ini. Saya harap tutorial ini akan membantu pembaca untuk mengganti beberapa baris file apa pun dengan menggunakan perintah 'sed'.

Cara Mengubah Pengaturan Mouse dan Touchpad Menggunakan Xinput di Linux
Sebagian besar distribusi Linux dikirimkan dengan pustaka "libinput" secara default untuk menangani kejadian input pada sistem. Ini dapat memproses ke...
Petakan ulang tombol mouse Anda secara berbeda untuk perangkat lunak yang berbeda dengan Kontrol Tombol X-Mouse
Mungkin Anda membutuhkan alat yang dapat membuat kontrol mouse Anda berubah dengan setiap aplikasi yang Anda gunakan. Jika demikian, Anda dapat mencob...
Ulasan Mouse Nirkabel Microsoft Sculpt Touch
Saya baru-baru ini membaca tentang Microsoft Sculpt Touch mouse nirkabel dan memutuskan untuk membelinya. Setelah menggunakannya untuk sementara waktu...