Menghapus Karakter dari String di Bash

Removing Characters From String Bash

Terkadang, Anda mungkin perlu menghapus karakter dari string. Apa pun alasannya, Linux memberi Anda berbagai alat praktis bawaan yang memungkinkan Anda menghapus karakter dari string di Bash. Artikel ini menunjukkan cara menggunakan alat tersebut untuk menghapus karakter dari string.

Artikel ini mencakup cara melakukan hal berikut:



  • Hapus karakter dari string menggunakan sed
  • Hapus karakter dari string menggunakan awk
  • Hapus karakter dari string menggunakan cut
  • Hapus karakter dari string menggunakan tr

Perintah yang ditampilkan dalam artikel ini dilakukan di Ubuntu 20.04 Focal Fossa. Perintah yang sama juga dapat dilakukan pada distribusi Linux lain yang memiliki alat di atas. Kami akan menggunakan aplikasi Terminal default untuk menjalankan perintah. Anda dapat mengakses aplikasi Terminal menggunakan pintasan keyboard Ctrl+Alt+T.



Hapus Karakter dari String Menggunakan sed

Sed adalah utilitas yang kuat dan berguna yang digunakan untuk mengedit aliran teks. Ini adalah editor teks non-interaktif yang memungkinkan Anda untuk melakukan manipulasi teks dasar pada aliran input. Anda juga dapat menggunakan sed untuk menghapus karakter yang tidak diinginkan dari string.



Untuk tujuan demonstrasi, kami akan menggunakan string sampel dan kemudian menyalurkannya ke perintah sed.

Hapus Karakter Tertentu dari String

Menggunakan sed, Anda dapat menghapus karakter tertentu dari sebuah string. Misalnya, untuk menghapus h dari string Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | sed 'NS//'

Ini hanya akan menghapus kemunculan pertama 'h' dalam string.
Hapus Karakter Tertentu dari String1
Untuk menghapus semua kemunculan 'h' dari string, gunakan perintah berikut:



$dibuang 'Halo apa kabarmu?' | sed 's/j//g'

Di mana G singkatan dari global. Ini akan menghapus semua kemunculan 'h' dalam string.
Hapus Karakter Tertentu dari String2

Hapus Karakter Pertama dari String

Untuk menghapus karakter pertama dari string Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | sed 's/^.//' mengajukan

Di mana (.) cocok dengan satu karakter dan (^) cocok dengan karakter apa pun di awal string.
Hapus Karakter Pertama dari String

Hapus Karakter Terakhir dari String

Untuk menghapus karakter terakhir dari string Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | sed 's/.$//'

Di mana ( . ) sama persis dengan satu karakter dan ($) cocok dengan karakter apa pun di akhir string.
Hapus Karakter Terakhir dari String

Hapus Karakter Pertama dan Terakhir dari String

Untuk menghapus karakter pertama dan terakhir dari string Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | sed 's /^.//; s /.$//'

Hapus Karakter Pertama dan Terakhir dari String

Hapus Karakter dari String Menggunakan awk

Awk adalah bahasa skrip yang kuat yang digunakan untuk pencocokan pola, bersama dengan pemrosesan teks. Awk memungkinkan Anda memfilter dan mengubah teks dengan berbagai cara. Anda juga dapat menggunakan awk untuk menghapus karakter dari string.

Untuk tujuan demonstrasi, kita akan menggunakan string sampel dan kemudian menyalurkannya ke perintah awk.

Hapus Karakter Pertama Dari String

Untuk menghapus karakter pertama dari string Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | awk '{ print substr( $0, 2 ) }'

Di mana ($0) adalah seluruh string target dan (2) adalah posisi awal karakter. Perintah di atas menghapus karakter pertama, 'h,' karakter nomor '1,' dan mengembalikan string target yang dimulai dengan karakter kedua, 'e.'
Hapus Karakter Pertama Dari String

Hapus Dua Karakter Pertama dari String

Anda juga dapat menghapus sejumlah karakter tertentu dari awal string. Misalnya, untuk menghapus dua karakter pertama dari string Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | awk '{ print substr ($0, 3 ) }'

Perintah di atas akan menghapus dua karakter pertama, 'he,' atau karakter nomor '1 dan 2,' dan mengembalikan string target yang dimulai dengan karakter nomor '3,' atau 'l.'
Hapus Dua Karakter Pertama dari String

Hapus Karakter Terakhir dari String

Untuk menghapus karakter terakhir dari Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | awk '{ print substr( $0, 1, length($0)-1 ) }'

Di mana panjang($0)-1 berarti mengurangi ' 1 ' dari total panjang karakter.

Perintah di atas akan mencetak string yang diawali dengan karakter nomor ‘ 1 ' sampai panjang($0)-1 untuk menanggalkan karakter terakhir.

Ada ' 19 ' karakter (termasuk spasi) dalam string di atas. Perintah akan bekerja dengan mencetak semua karakter, dimulai dengan karakter ‘ 1 ' dan hingga karakter' 18 ,' sambil menghapus karakter terakhir ' 19 . '

rmv char terakhir dari string

Hapus Dua Karakter Terakhir dari String

Untuk menghapus dua karakter terakhir dari Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | awk '{ print substr( $0, 1, length($0)-2 ) }'

Di mana panjang($0)-2 berarti mengurangi ' 2 ' dari total panjang karakter.

Perintah di atas akan mencetak string, dimulai dengan karakter nomor ' 1 ' dan hingga nomor karakter' panjang($0)-2 ,' untuk menghapus dua karakter terakhir dalam string.
Hapus Dua Karakter Terakhir dari String

Hapus Karakter Pertama dan Terakhir dari String

Untuk menghapus karakter pertama dan terakhir dari string Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | awk '{cetak substr($0, 2, panjang($0) - 2)}'

Di mana panjang($0)-2 berarti mengurangi ' 2 ' dari total panjang karakter.

Perintah di atas akan mencetak string, dimulai dengan karakter nomor ' 2 ' hingga nomor karakter' panjang($0)-2 ,' untuk menghapus karakter pertama dan terakhir.

Hapus Karakter Pertama dan Terakhir dari String

Hapus Karakter dari String Menggunakan cut

Cut adalah alat baris perintah yang biasa digunakan untuk mengekstrak sebagian teks dari string atau file dan mencetak hasilnya ke output standar. Anda juga dapat menggunakan perintah ini untuk menghapus karakter dari string.

Untuk tujuan demonstrasi, kami akan menggunakan string sampel dan kemudian menyalurkannya ke perintah cut.

Hapus Karakter Pertama dari String

Untuk menghapus karakter pertama dari string, Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | memotong -C 2-

Perintah ini akan mencetak string, dimulai dengan karakter kedua, sambil menghapus karakter pertama.
potongan rmv -c

Hapus Empat Karakter Pertama dari String

Untuk menghapus empat karakter pertama dari string Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | memotong -C 5-

Perintah ini akan mencetak string, mulai dari karakter kelima, sambil menghapus empat karakter pertama.
Hapus Empat Karakter Pertama dari String

Cetak String Antara Karakter ke-2 dan ke-5

Untuk mencetak string Halo apa kabarmu? antara karakter kedua dan kelima , perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | memotong -C 2-5

Perintah ini akan mencetak string, mulai dari karakter kedua dan hingga karakter kelima, sambil menghapus sisa karakter awal dan akhir.
rmv 2 dan 5 c2

Hapus Karakter Terakhir dari String

Untuk menghapus karakter terakhir dari string Halo apa kabarmu? menggunakan memotong perintah dengan putaran , sebagai berikut:

$dibuang 'Halo apa kabarmu?' | putaran | memotong -c2- | putaran

Perintah ini bekerja dengan membalik string terlebih dahulu, lalu memotong karakter pertama, dan akhirnya membaliknya lagi untuk memberikan hasil yang diinginkan.
02Hapus Karakter Terakhir dari String

Hapus Empat Karakter Terakhir dari String

Untuk menghapus empat karakter terakhir dari baris Halo apa kabarmu? perintahnya akan menjadi:

$dibuang 'Halo apa kabarmu?' | putaran | memotong -c5- | putaran

Perintah ini bekerja dengan membalik string terlebih dahulu, lalu memotong empat karakter pertama, dan kemudian membaliknya lagi untuk memberikan hasil yang diinginkan.
rmv empat karakter terakhir

Hapus Karakter Pertama dan Terakhir dari String

Untuk menghapus karakter pertama dan terakhir dari string Halo apa kabarmu? menggunakan memotong perintah dengan putaran , sebagai berikut:

$dibuang 'Halo Dunia!' | memotong -c2- | putaran | memotong -c2- |putaran

Perintah ini bekerja dengan memotong karakter pertama, kemudian membalikkan string dan memotong karakter pertamanya, dan kemudian membalikkannya lagi untuk memberi Anda hasil yang diinginkan.
rmv pertama dan terakhir

Hapus Karakter dari String Menggunakan tr

Perintah tr (kependekan dari translate) digunakan untuk menerjemahkan, memeras, dan menghapus karakter dari sebuah string. Anda juga dapat menggunakan tr untuk menghapus karakter dari string.

Untuk tujuan demonstrasi, kami akan menggunakan string sampel dan kemudian menyalurkannya ke perintah tr.

Hapus Semua Kemunculan Karakter

Menggunakan perintah tr, Anda dapat menghapus semua kemunculan karakter huruf kecil atau huruf besar dari string Anda. Misalnya, untuk menghapus semua kemunculan karakter huruf kecil 'h' dari string, perintahnya adalah:

$dibuang 'Halo apa kabarmu?' | NS -DH

hapus semua kejadian 01

Demikian pula, untuk menghapus semua kemunculan karakter huruf besar 'H' dari string, perintahnya adalah:

$dibuang 'Halo apa kabarmu?' | NS -DH

Anda juga dapat menggunakan urutan yang ditafsirkan untuk menghapus huruf kecil atau huruf besar:

$dibuang 'Halo apa kabarmu?'| NS -D [:atas:]

kejadian lebih rendah

$dibuang 'Halo apa kabarmu?'| NS -D [:lebih rendah:]

kejadian atas

Hapus Semua Kemunculan Karakter Huruf Kecil dan Huruf Besar

Anda juga dapat menghapus semua kemunculan karakter huruf kecil dan huruf besar dari sebuah string. Misalnya, perintah berikut akan menghapus semua kemunculan karakter 'h', baik huruf kecil maupun huruf besar.

$dibuang 'Halo apa kabarmu?' | NS -D'hH'

kejadian atas dan bawah

Hapus Semua Kemunculan Karakter dalam Rentang Tertentu

Untuk menghapus semua kemunculan karakter dari string dalam rentang tertentu 'd-h,' perintahnya adalah:

$dibuang 'Halo apa kabarmu?' | NS -D 'd-h'

Perintah ini akan menghapus semua karakter dalam rentang 'd-h' (d,e,f,g,h) dalam string.
rentang spesifik kejadian

Kesimpulan

Di Linux, akan selalu ada lebih dari satu cara untuk menyelesaikan pekerjaan sederhana. Hal yang sama berlaku dengan menghapus karakter dari string. Artikel ini menunjukkan kepada Anda empat cara berbeda untuk melakukannya, bersama dengan beberapa contoh untuk menghapus karakter yang tidak diinginkan dari sebuah string. Memutuskan alat mana yang akan digunakan semuanya tergantung pada preferensi Anda dan, yang lebih penting, pada apa yang ingin Anda capai.