Perintah Linux

Perintah Linux tr

Perintah Linux tr
Di Linux, "tr" adalah alat bawaan yang dapat "menerjemahkan, memeras, dan/atau menghapus karakter dari input standar, menulis ke output standar" (dari halaman manual).

Dari deskripsi resmi, mudah untuk memahami nilai alat ini. Linux hadir dengan banyak koleksi alat bawaan. Ada beberapa yang khusus yang sangat berguna untuk manipulasi teks. Kami telah membahas beberapa di antaranya, seperti Vim, Nano, awk, sed, dan alat lainnya.

Mereka yang bekerja dengan teks secara teratur, "tr" pasti akan sangat, sangat berguna. Artikel ini akan mengilustrasikan penggunaan "tr" yang paling umum dengan contoh yang cukup.

Catatan: Tutorial ini akan menggunakan banyak file dummy dengan konten acak. Semua string acak dihasilkan oleh Acak.organisasi.

Lokasi

yang mana

Ini adalah jalur lengkap dari alat perintah "tr".

Penggunaan dasar

Untuk menggunakan alat "tr", Anda harus menggunakan struktur perintah berikut:.

tr [SET1] [SET2]

Ada berbagai opsi dan cara untuk memanipulasi teks menggunakan "tr". Pertama, mari kita lihat file demo ini.

demo kucing.txt

Semua karakter dalam huruf kecil, kan? Mari kita ubah menjadi huruf besar!

demo kucing.txt | tr [:bawah:] [:atas:]

Di sini, parameter pertama "tr" menunjukkan untuk melakukan terjemahan pada semua karakter huruf kecil dari input. Bagian kedua mengatakan untuk mengubahnya menjadi huruf besar pada output.

Sekarang, mari kita lakukan yang sebaliknya.

demo kucing1.txt

demo kucing1.txt | tr [:atas:] [:bawah:]

Ada juga cara lain untuk melakukan tugas yang sama ini. Mari kita periksa.

demo kucing.txt | tr [a-z] [A-Z]

Sekarang, alih-alih memberi tahu "tr" untuk menerjemahkan huruf besar ke huruf kecil atau huruf kecil ke huruf besar, kami diminta untuk mengidentifikasi entri yang cocok dengan rentang "a" hingga "z" dan menerjemahkannya ke padanannya dari rentang "A" hingga "Z".

Metode serupa ini juga dapat digunakan untuk menerjemahkan huruf besar ke huruf kecil.

demo kucing1.txt | tr [A-Z] [a-z]

Bermain dengan angka

Kami melihat bagaimana menerjemahkan huruf besar ke huruf kecil, kan? Saatnya bermain-main dengan angka.

Dengan menggunakan perintah berikut, kita dapat dengan mudah menerjemahkan semua digit (0-9) ke dalam karakter yang setara!

demo_digit kucing.txt

demo_digit kucing.txt | tr [0-9] [a-z]

Luar biasa! Bagaimana dengan yang huruf besar??

demo_digit kucing.txt | tr [0-9] [A-Z]

Sederhana, namun menarik, kan? Kami juga dapat mengubah karakter menjadi angka juga!

kucing demo_huruf kecil.txt

kucing demo_huruf kecil.txt | tr [a-z] [0-9]

Uh oh, sepertinya semuanya rusak, kan? Nah, kita hanya bisa menggunakan 'a' untuk 'j' untuk mewakili satu digit. Jika ada karakter yang berada di luar batas ini, “tr” akan menggantikan karakter tersebut dengan ']'.

Menghapus karakter

Seperti yang disarankan oleh deskripsi resmi, "tr" dapat melakukan lebih dari sekadar terjemahan karakter. Dalam contoh berikut, kita akan melihat cara menggunakan "tr" untuk menghapus karakter tertentu.

kucing acak.txt

Sekarang, mari kita hapus semua angka dari konten.

kucing acak.txt | tr -d [0-9]

Di sini, bendera "-d" adalah untuk memberi tahu "tr" untuk menghapus dan [0-9] menunjukkan angka yang akan dihapus.

Kita juga bisa melakukannya dengan karakter. Perintah berikut akan menyimpan semua angka tetapi menghapus semua karakter.

kucing acak.txt | tr -d [a-z]

Bagaimana dengan menghapus hanya satu karakter tertentu dari file??

kucing demo_huruf kecil.txt

kucing demo_huruf kecil.txt | tr -d 'y'

Itu menghapus semua entri 'y' dari file.

Meremas karakter berulang

Ada kalanya karakter diulang secara berurutan. Jika Anda berurusan dengan masalah yang mengganggu seperti itu, biarkan "tr" yang menanganinya! Menggunakan perintah berikut, Anda dapat menekan kejadian seperti itu. Ini pada dasarnya menjaga kemunculan awal karakter dan menghapus yang tambahan.

Pertama, waktu untuk memeriksa bagaimana file demo terlihat.

duplikat kucing.txt

Sekarang, berikan konten ke "tr".

duplikat kucing.txt | tr -s [:digit:]

Di sini, parameter “-s” adalah indikator untuk melakukan tindakan “squeeze”.

Memutuskan/menggabungkan kalimat

Mari kita periksa file demo.

duplikat kelelawar.txt

Ini berisi kalimat dengan spasi yang membagi kata-kata, kan? Mari kita pisahkan kata-kata menjadi baris baru.

duplikat kucing.txt | tr " " "\n"

Perintah ini menggantikan semua karakter spasi dengan karakter baris baru.

Mari kita gabungkan kalimat yang terputus menjadi kalimat yang panjang lagi.

duplikat kelelawar.txt

duplikat kucing.txt | tr "\n" " "

Menerjemahkan karakter

Sama seperti kami menerjemahkan karakter sebelumnya, kali ini, kami akan melakukan hal yang sama tetapi hanya dengan satu karakter.

demo kucing.txt

Dalam file ini, mari ubah semua karakter baris baru menjadi titik koma.

demo kucing.txt | tr "\n" ";"

Saya harus membungkusnya dengan "gema". Jika tidak, itu akan membuat beberapa output karena karakter baris baru terakhir juga akan diterjemahkan menjadi titik koma.

Ada cara berbeda untuk mengubah karakter. Namun, yang ini lebih sulit dikendalikan.

duplikat kucing1.txt

duplikat kucing1.txt | tr -c 'd' 'z'

duplikat kucing1.txt | tr -c 'd' 'z'

Wow! Mari kita bungkus di sekitar "gema" untuk lebih memahami output.

echo $(duplikat kucing1.txt | tr -c 'd' 'z')

Apa yang terjadi disini? Menggunakan flag “-c”, “tr” hanya akan membuat karakter target tidak berubah. Dalam kasus ketidakcocokan, setiap karakter lain akan diubah. Di sini, karakter apa pun selain 'b' diganti dengan 'z'.

Menerjemahkan string

"tr" juga dapat bekerja dengan string. Mari kita lakukan penggantian string.

duplikat kucing1.txt

duplikat kucing1.txt | tr "duplikat" "bukan_duplikat"

Tali yang saya ganti lebih pendek dari tali yang akan diganti, jadi tidak pas.

Set karakter

Sekarang, Anda telah memperhatikan bahwa ada sejumlah set karakter yang didukung oleh "tr". Sementara beberapa dari mereka digunakan dalam contoh di atas, set karakter lain juga cukup membantu. Berikut daftar semua daftar karakter yang didukung.

Kumpulan karakter POSIX

  • [:digit:] : Digit 0-9
  • [:alpha:] : Abjad a-z dan A-Z.
  • [:alnum:] : Karakter alfanumerik
  • [:punct:] : Simbol tanda baca
  • [:spasi:] : Karakter spasi apa pun, misalnya spasi, tab, FF, CR, NL, FF, dll.
  • [:upper:] : Semua huruf besar
  • [:lower:] : Semua huruf kecil
  • [:cntrl:] : Semua karakter kontrol (NL, CR, EXT, STX, ACK, SO, DC1, DC2, NAK, ETB, ESC, IS1, IS2, DEL dll.)

Set karakter tambahan

  • [A-Z] : Semua huruf besar
  • [a-z] : Semua huruf kecil
  • [0-9] : Semua angka

Pikiran terakhir

Ada banyak cara agar semua fitur "tr" ini dapat bermanfaat bagi pengguna. Saya selalu merekomendasikan untuk memeriksa semua opsi yang tersedia dan panduan mendalam tentang alat Linux apa pun dari halaman manual, info, dan bantuan mereka karena mereka dapat menawarkan pengetahuan yang lebih berharga.

tr --membantu

pria tr

info tr

Nikmati!

Cara mengubah penunjuk Mouse dan ukuran kursor, warna & skema pada Windows 10
Penunjuk mouse dan kursor di Windows 10 adalah aspek yang sangat penting dari sistem operasi. Ini dapat dikatakan untuk sistem operasi lain juga, jadi...
Mesin Game Gratis dan Sumber Terbuka untuk Mengembangkan Game Linux
Artikel ini akan membahas daftar mesin game sumber terbuka dan gratis yang dapat digunakan untuk mengembangkan game 2D dan 3D di Linux. Ada banyak mes...
Shadow of the Tomb Raider untuk Tutorial Linux
Shadow of the Tomb Raider adalah tambahan kedua belas untuk seri Tomb Raider - waralaba game aksi-petualangan yang dibuat oleh Eidos Montreal. Permain...