Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Menggunakan Perintah iconv di Linux

Posted on August 14, 2023

Apa pun jenis data yang digunakan atau disimpan oleh komputer, data tersebut disimpan sebagai informasi biner. Gambar, teks, musik, video, dan lainnya disimpan sebagai data biner. Apakah data ada di perangkat penyimpanan atau dimuat ke dalam memori komputer, itu masih diwakili oleh nilai biner.

Jika data adalah teks, dan kami ingin menampilkan teks itu di layar, ada terjemahan yang harus terjadi untuk mengonversi nilai biner menjadi karakter. Untuk melakukan translasi, kita perlu mengetahui nilai mana yang digunakan untuk mewakili setiap karakter saat data dibuat. Perangkat lunak kemudian dapat bekerja mundur dan memetakan nilai numerik yang disimpan kembali ke karakter.

Karena kesuksesan bergantung pada mengetahui jenis pemetaan apa yang telah digunakan dan dengan ketat mematuhi aturan pemetaan selama pembuatan data dan penggunaan data, standar telah dibuat yang memformalkan pemetaan karakter seperti itu. Mereka mudah dipahami jika kita mendapatkan jargon langsung.

Karakter, Byte, dan Pemetaan

Karakter adalah huruf, angka, atau simbol lain yang dapat ditampilkan, seperti simbol tanda baca, tanda matematika seperti sama dengan “=” dan plus “+ ”, dan simbol mata uang. Hal yang Anda lihat di layar yang mewakili huruf itu disebut mesin terbang, dan kumpulan mesin terbang membentuk jenis huruf.

A jenis huruf adalah apa yang secara keliru disebut oleh banyak orang sebagai font. Sebenarnya, font adalah versi dari jenis huruf yang telah dimodifikasi, misalnya dengan menambah atau mengurangi ukurannya, atau mengubah bobotnya untuk membuat garis-garis mesin terbang lebih tebal atau lebih tipis. Terlepas dari jenis hurufnya, representasi numerik dari karakter tetap sama.

Semua karakter dalam satu pemetaan disebut himpunan karakter. Setiap karakter dalam satu set memiliki nilai numeriknya sendiri, tetap, unik, yang disebut titik kode. Jika karakter atau simbol tidak muncul di kumpulan karakter – artinya, tidak ada titik kode untuk itu – maka karakter atau simbol tersebut tidak dapat ditampilkan menggunakan kumpulan karakter tersebut. Pertimbangan penting adalah jumlah byte yang digunakan untuk mewakili satu karakter. Semakin banyak byte yang Anda gunakan per karakter, semakin banyak karakter yang dapat Anda sertakan dalam set.

Kakek dari semua set karakter byte tunggal adalah standar ASCII. Itu berasal dari akhir 1960-an ketika standar 7-bit ditetapkan yang mengkodekan 128 titik kode berbeda untuk digunakan oleh teleprinter. Sebaliknya, standar Unicode berisi total 1.114.112 poin kode. Ruang kode yang begitu besar diperlukan karena Unicode mencoba menyediakan dukungan pemetaan karakter untuk semua bahasa manusia. Menggunakan byte dalam jumlah tetap untuk menyimpan titik kode adalah pemborosan. Jika titik kode hanya membutuhkan satu byte untuk mengidentifikasinya, byte lain yang dicadangkan untuk titik kode tersebut akan mubazir. Kumpulan karakter dengan panjang variabel multibyte Unicode menggunakan sejumlah byte variabel untuk titik kode, dengan sebanyak empat byte diperlukan untuk mendeskripsikan titik kode yang rumit.

Jadi, titik kode mungkin harus menyandikan dua jenis data. Itu harus mengidentifikasi karakter yang diwakilinya, dan itu harus berisi metadata tentang dirinya sendiri, seperti jumlah byte di titik kode. Selain itu, beberapa karakter perlu digabungkan dengan karakter lain untuk mendapatkan mesin terbang akhir, sehingga titik kode juga perlu menyandikan informasi tersebut.

Keuntungan dari skema panjang variabel adalah Anda hanya menggunakan byte yang benar-benar Anda butuhkan. Ini efisien, dan menghasilkan file yang lebih kecil. Kerugiannya adalah, data lebih rumit untuk dibaca dan diurai. Dan mengubah dari satu set karakter ke yang lain bisa menjadi sangat sulit, sangat cepat.

Di situlah perintah iconv masuk. pengkodean karakter yang didukungnya. Ini mencantumkan lebih dari 1100 pengkodean yang berbeda, tetapi banyak yang merupakan alias untuk hal yang sama. Kami dapat membuat daftar semua pengkodean yang didukung menggunakan opsi -l (daftar). Jika Anda tidak menentukan nama file, iconv menggunakan STDIN dan STDOUT, mengambil inputnya dari baris perintah dan menulis outputnya ke jendela terminal. Anda dapat menyalurkan input ke iconv, dan Anda juga dapat mengarahkan outputnya ke file.

Kami akan menggunakan iconv dengan STDIN untuk mengilustrasikan beberapa poin. Kita perlu menentukan penyandian teks input, jadi kita akan menggunakan perintah lokal untuk menemukan apa itu.

locale

Baris pertama mengatakan kita menggunakan bahasa Inggris AS, dan penyandian Unicode UTF-8. String pengujian kami memiliki beberapa teks biasa, kata beraksen, karakter non-Inggris (karakter eszett Jerman, ß), dan simbol mata uang untuk Euro.

plain à beraksen non-Inggris ß Mata uang asing €

Kami akan mengonversi ini ke dalam ASCII. Kami menggunakan gema untuk menyalurkan teks input kami ke iconv. Kami menggunakan opsi -f (dari) untuk menentukan penyandian input adalah UTF-8, dan opsi -t (ke) untuk menunjukkan bahwa kami menginginkan output dalam US-ASCII.

eccho polos à beraksen non-Inggris ß Mata uang asing € | iconv -f UTF-8 -t US-ASCII

Itu gagal pada rintangan pertama. Tidak ada karakter yang setara di US-ASCII untuk “à”, sehingga konversi diabaikan. iconv menggunakan penghitungan zero-offset, jadi kami diberi tahu bahwa masalah terjadi di posisi enam. Jika kita menambahkan opsi -c (lanjutkan) iconv akan membuang karakter yang tidak dapat dikonversi dan melanjutkan memproses sisa input.

eccho polos beraksen non-Inggris ß Mata uang asing € | iconv -f UTF-8 -t US-ASCII

Perintah berjalan sampai selesai sekarang, tetapi ada karakter yang hilang dari output. Kita dapat membuat iconv untuk memberikan perkiraan karakter yang tidak dapat diubah dengan mengganti karakter yang serupa, atau representasi lainnya. Jika tidak bisa mengaturnya, itu menyisipkan tanda tanya “?” sehingga Anda dapat dengan mudah melihat karakter tidak dikonversi. Proses ini disebut transliterasi, dan untuk memanggilnya Anda menambahkan string “//TRANSLIT” ke pengkodean target. iconv -f UTF-8 -t US-ASCII//TRANSLIT

Sekarang kita telah mendapatkan teks keluaran lengkap, dengan “a” bukan “à” dan “ss” bukan “ß”, dan “EUR” bukan “€” currency symbol.

Menggunakan iconv With Files

Menggunakan iconv dengan files sangat mirip dengan menggunakannya pada baris perintah. Untuk mengetahui jenis pengkodean file sumber, kita dapat menggunakan perintah file.

file -i input.txt

File input kita dalam pengkodean UTF-16LE. Itu adalah pengkodean little-endian 16-bit. Tampilannya seperti ini:

less input.txt

Jika Anda menyipitkan mata dan membaca karakter berwarna putih, Anda dapat memilih string teks sebenarnya. Banyak perangkat lunak salah memperlakukan file seperti ini sebagai file biner, jadi kami akan mengonversinya menjadi UTF-8.

Kami menggunakan opsi -f (dari) untuk menentukan penyandian file input, dan – t (ke) opsi untuk memberi tahu iconv bahwa kami menginginkan output dalam UTF-8. Kita perlu menggunakan opsi -o (output) untuk menamai file output. Kami tidak menggunakan opsi untuk menamai file input—kami hanya memberi tahu iconv apa namanya.

iconv -f UTF-16LE -t UTF-8//TRANSLIT input.txt -o output.txt

File output kami terlihat seperti ini:

less output.txt

Anda mungkin tidak sering menggunakan iconv, tetapi saat Anda benar-benar membutuhkannya, ikon ini dapat menghemat bacon Anda.

Saya menerima banyak kiriman file dari orang yang menggunakan komputer Windows atau Mac, dan seringkali dari luar negeri. Mereka datang dalam segala macam pengkodean. Saya telah memberkati iconv lebih dari sekali karena dengan mudah mengizinkan saya bekerja dengan file-file itu di Linux.

Terbaru

  • Inilah 5 Rekomendasi Kipas Tangan Portable Cas Tahan Lama Biar Kalian Tetap Adem Saat Cuaca Panas Ekstrem
  • Inilah MacBook Neo, Laptop Termurah Apple yang Ternyata Punya Performa Gaming Gila!
  • Inilah Daftar Tablet SIM Card 5G dengan Keyboard Terbaik 2026 untuk Kerja Remote
  • Inilah Daftar Game Penghasil Pulsa 2026, Cara Cerdas Dapat Kuota Gratis Tanpa Keluar Duit Sepeserpun!
  • Inilah Caranya Klaim Bonus Kuota Lokal Smartfren 2026, Jangan Sampai Bonus Kalian Hangus Sia-sia!
  • Inilah Cara Mengatasi Rockstar Games Launcher Not Responding dan Macet Saat Connecting
  • Inilah Cara Cek HP Masih Kredit atau Sudah Lunas Biar Kalian Nggak Ketipu Pas Beli Bekas
  • Inilah Cara Pakai Astute FF Beta Apk 2026, Rahasia Unlock Server 2.0 Tanpa Verifikasi!
  • Inilah Ketentuan Foto UM-PTKIN 2026 yang Benar Biar Nggak Gagal Verifikasi Administrasi
  • Inilah Cara Persiapan E IJAZAH 2026 yang Benar Buat Operator Sekolah Agar Data Siswa Aman dan Valid
  • Inilah Cara Cek Status PKH April 2026 Secara Akurat, Dana Bansos Sudah Masuk Rekening Belum Ya?
  • Inilah Spesifikasi Vivo Y31d Pro, HP Murah dengan Baterai 7.000 mAh dan Bodi Tahan Banting Ekstrem
  • Inilah 5 Rekomendasi HP Samsung dengan Fitur NFC Terbaik yang Bikin Hidup Makin Praktis dan Satset
  • Inilah Deretan HP Vivo dengan Kamera Stabilizer Terbaik 2026, Cocok Banget Buat Konten Kreator Modal Minim!
  • Cara Mendapatkan Lead dan Rekomendasi SEO dari ChatGPT dan Claude (Update Tahun 2026)
  • Inilah Rekomendasi HP Infinix Kamera Bagus dan RAM Besar Paling Juara Buat Konten dan Gaming!
  • Inilah Trik Supaya Koneksi Indosat Makin Kencang, Tutorial Setting APN Terbaru 2026!
  • Inilah 7 HP Xiaomi NFC Termurah 2025, Dompet Aman Aktivitas Tetap Lancar!
  • Inilah 5 Rekomendasi HP Samsung dengan Fitur NFC Termurah dan Terbaik untuk Kebutuhan Harian Kalian
  • Inilah Rekomendasi HP Vivo Harga 2 Jutaan dengan Fitur Stabilizer Kamera Terbaik untuk Konten Kreator
  • Inilah 5 HP Infinix Kamera Bagus dan RAM Besar, Bikin Konten Jadi Makin Estetik!
  • Inilah Alasan Kenapa Lenovo Yoga Tab Bakal Jadi Tablet AI Paling Gahar di Tahun 2026
  • Inilah Bocoran Tecno Pova 8 dan Spark 50 Pro, HP dengan Baterai Monster Sampai 7.750mAh!
  • Inilah Alasan Kenapa Poco X8 Pro Series Ludes Terjual 30 Ribu Unit dalam Sehari, Performanya Benar-Benar Naik Kelas!
  • Inilah Rekomendasi HP Samsung dengan Kamera Terbaik 2025, Hasil Foto Dijamin Kayak Profesional!
  • Inilah Kemudahan Belanja Elektronik Lewat Kolaborasi Strategis Indodana Finance dan Sharp Indonesia
  • Inilah Rekomendasi Smartwatch Mirip Apple Watch Termurah 2026 yang Bikin Gaya Makin Maksimal
  • Inilah Cara Cek Lokasi UTBK 2026 Agar Tidak Salah Alamat dan Terlambat
  • Inilah Realme Narzo 100 Lite 5G, Smartphone Baterai 7000mAh yang Siap Meluncur dengan Spesifikasi Gahar dan Layar Super Smooth
  • Inilah Alasan Kenapa Aplikasi MOVA Berbahaya dan Bukan Cara Cepat Kaya yang Aman
  • Is it Time to Replace Nano? Discover Fresh, the Terminal Text Editor You Actually Want to Use
  • How to Design a Services Like Google Ads
  • How to Fix 0x800ccc0b Outlook Error: Step-by-Step Guide for Beginners
  • How to Fix NVIDIA App Error on Windows 11: Simple Guide
  • How to Fix Excel Formula Errors: Quick Fixes for #NAME
  • A Complete Tutorial on How to Self-Host Convex on a VPS for Real-Time App Sync
  • Complete tutorial on creating high-quality realistic AI videos with ultra-realistic skin and cinematic camera movements
  • Complete Tutorial: Exploring Hermes Agent v0.8.0 Features for Better AI Workflows
  • How to Master PixelSmile: A Complete Tutorial for Fine-Grained Facial Expression Editing in ComfyUI
  • How to Create Ultra-Realistic Talking AI Characters with LTX and ComfyUI: A Complete Workflow Tutorial
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025

©2026 emka.web.id | Design: Newspaperly WordPress Theme