sed

Cara Mengganti Semuanya setelah Pola menggunakan Perintah 'sed'

Cara Mengganti Semuanya setelah Pola menggunakan Perintah 'sed'

Tugas penggantian dapat dilakukan di Linux dengan berbagai cara. Perintah 'sed' adalah salah satu cara untuk melakukan tugas penggantian. Perintah ini dapat digunakan untuk mengganti teks dalam string atau file dengan menggunakan pola yang berbeda. Bagaimana Anda dapat mengganti semuanya setelah pola yang cocok menggunakan perintah 'sed' ditunjukkan dalam tutorial ini.

Ganti semuanya setelah kecocokan dalam sebuah string:

Bagaimana bagian dari string dapat diganti berdasarkan pola yang cocok dan $PARTITION_COLUMN telah ditampilkan di bagian tutorial ini. Tetapi variabel ini berfungsi jika polanya cocok dengan kata apa pun di awal atau tengah string. Itu tidak akan menggantikan teks jika polanya cocok dengan kata terakhir dari string.

Contoh-1: Ganti semua setelah pertandingan menggunakan $PARTITION_COLUMN

Perintah berikut akan mencari karakter 'a', dan bagian yang tersisa setelah 'a' akan diganti dengan teks, "situs blog populer". $PARTITION_COLUMN.* digunakan untuk mendefinisikan bagian yang tersisa setelah karakter, 'a'.

$ echo "LinuxHint adalah sebuah situs web" | sed "s/a $PARTITION_COLUMN.*/situs blog populer/"

Output berikut akan muncul setelah menjalankan perintah:. Di sini, 'situs web' telah diganti dengan 'situs blog populer'.


Pola berikut akan mencari kata 'jaring'  dalam string dan ganti bagian yang tersisa dengan 'jaring' dengan teks, 'situs blog populer' jika ada kecocokan dan 'jaring' bukan bagian dari kata terakhir dari string.

$ echo "LinuxHint adalah sebuah situs web" | sed "s/web.* $PARTITION_COLUMN.*/situs blog populer/"

Output berikut akan muncul setelah menjalankan perintah:. Di sini, 'situs web' adalah kata terakhir dari string, dan tidak ada penggantian yang dilakukan karena alasan ini.

Contoh-2: Ganti semua setelah pertandingan menggunakan pola

Perintah berikut akan mencari kata 'pesta' secara global dalam string dan ganti semuanya dengan Word jika Word ada dalam string. 'g' digunakan di sini untuk penelusuran global.

$ echo "Saya suka pemrograman bash" | sed "s/bash.*/skrip python/g"

Output berikut akan muncul setelah menjalankan perintah:. Di sini, 'bash' ada di tengah string, dan penggantian telah dilakukan.

Ganti semuanya setelah kecocokan dalam file:

Semua konten dari baris tertentu atau beberapa baris atau baris yang tersisa dari file setelah kecocokan dapat diganti menggunakan 'sed' perintah. Buat file teks bernama kehadiran.txt dengan konten berikut untuk menguji contoh yang ditunjukkan di bagian ini.

kehadiran.txt

1108885 hadir
19999979 hadir
1769994 tidak hadir
1105656 tidak ada
1455999 tidak ada

Contoh -3: Ganti semua konten dari baris file setelah pertandingan

Perintah 'sed' berikut akan mencari nomor 1769994 dalam file, dan semua dengan nomor tersebut akan diganti dengan teks, '1586844 hadir' jika nomor tersebut ada di setiap baris file.

$ kucing allendence.txt
$ sed "s/1769994.*/1586844 hadir/" hadir.txt

Output berikut akan muncul menjalankan perintah. Di sini, nomor pencarian ada di baris ketiga file, dan penggantian telah dilakukan.

Contoh -4: Ganti semua konten dari beberapa baris file setelah kecocokan

Perintah 'sed' berikut menunjukkan penggunaan variabel $PARTITION_COLUMN untuk mengganti beberapa baris dari file. Perintah akan mencari '110' di awal setiap baris file dan mengganti semuanya dengan '110' dengan teks 'Entri Tidak Valid' di mana teks yang cocok akan ditemukan.

$ kehadiran kucing.txt
$ sed "s/^110.* $PARTITION_COLUMN.*/Entri Tidak Valid/" kehadiran.txt

Output berikut akan muncul setelah menjalankan perintah:. '110' ada di dua baris file, dan ini telah diganti dengan teks pengganti.

Contoh-5: Ganti semua konten dari baris file menggunakan 'c' setelah kecocokan

Pengikut 'sed' perintah menunjukkan penggunaan 'c' untuk mengganti semuanya setelah pertandingan. Di sini, 'c' menunjukkan perubahan. Perintah akan menelusuri kata 'menyajikan' dalam file dan ganti semua baris dengan teks, 'Baris ini diganti' jika kata itu ada di baris file mana pun.

$ kehadiran kucing.txt
$ sed '/present/c Baris ini diganti ' absensi.txt

Output berikut akan muncul setelah menjalankan perintah:. Kata 'present' ada di dua baris pertama file, dan dua baris ini telah diganti dengan teks pengganti.

Contoh-6: Ganti semua konten dari baris file berdasarkan pola awal dan akhir

Terkadang diperlukan untuk mengganti teks berdasarkan pola awal dan akhir. Perintah 'sed' berikut menunjukkan cara untuk menentukan pola awal dan akhir untuk mengganti baris dari file. Perintah akan mencari baris-baris dalam file yang dimulai dengan angka 110 dan diakhiri dengan kata 'absen' dan mengganti semuanya dengan kata 'diganti' di mana polanya cocok.

$ kehadiran kucing.txt
$ sed -e 's/^110.*absen$/diganti/g' hadir.txt

Output berikut akan muncul setelah menjalankan perintah:. Di sini, baris pertama dan keempat dimulai dengan angka 110, tetapi kata 'absen' hanya ada di baris keempat. Jadi, baris keempat file telah diganti dengan teks pengganti.

Kesimpulan:

Perintah 'sed' adalah alat Linux yang sangat kuat untuk melakukan berbagai jenis tugas terkait pemrosesan teks text. Tugas penggantian berdasarkan pola yang cocok dibahas dalam tutorial ini dengan menggunakan berbagai jenis pola dalam perintah 'sed'. $PARTITION_COLUMN, 'c', dan '.*' digunakan dalam tutorial ini untuk mengganti semua baris file tempat pola yang cocok ada. Penggunaan beberapa karakter untuk mendefinisikan pola telah ditunjukkan di sini, seperti '^' dan '$'. Banyak karakter lain yang ada untuk menentukan pola dalam ekspresi reguler untuk tujuan pencarian. Saya harap tutorial ini akan membantu pembaca untuk mengetahui dasar-dasar mengganti semuanya dari file setelah pertandingan.

Game Remaster HD untuk Linux yang Belum Pernah Rilis Linux Sebelumnya
Banyak pengembang dan penerbit game datang dengan remaster HD dari game lama untuk memperpanjang umur waralaba, harap penggemar meminta kompatibilitas...
Cara Menggunakan AutoKey untuk Mengotomatiskan Game Linux
AutoKey adalah utilitas otomatisasi desktop untuk Linux dan X11, diprogram dengan Python 3, GTK dan Qt. Dengan menggunakan skrip dan fungsionalitas MA...
Cara Menampilkan Penghitung FPS di Game Linux
Game Linux mendapat dorongan besar ketika Valve mengumumkan dukungan Linux untuk klien Steam dan game mereka pada tahun 2012. Sejak itu, banyak game A...