Cara mengonversi file ke pengkodean UTF-8 di Linux

Cara mengonversi file ke pengkodean UTF-8 di Linux

Dalam panduan ini, kami akan menjelaskan apa yang mengkode dan mencakup beberapa contoh mengonversi file dari satu pengkodean karakter ke yang lain menggunakan alat baris perintah. Lalu akhirnya, kita akan melihat cara mengonversi beberapa file dari set karakter apa pun (Charset) ke UTF-8 Pengkodean di Linux.

Seperti yang mungkin sudah Anda pikirkan, komputer tidak mengerti atau menyimpan huruf, angka atau apa pun yang kita sebagai manusia dapat rasakan kecuali bit. Bit hanya memiliki dua nilai yang mungkin, yaitu a 0 atau 1, BENAR atau PALSU, Ya atau TIDAK. Setiap hal lain seperti huruf, angka, gambar harus diwakili dalam bit untuk diproses komputer.

Secara sederhana, Pengkodean Karakter adalah cara untuk memberi tahu komputer bagaimana menafsirkan nol mentah dan yang menjadi karakter aktual, di mana karakter diwakili oleh set angka. Saat kami mengetik teks dalam file, kata-kata dan kalimat yang kami bentuk dimasak dari karakter yang berbeda, dan karakter diatur ke dalam Charset.

Ada berbagai skema penyandian di luar sana seperti ASCII, ANSI, Unicode diantara yang lain. Di bawah ini adalah contoh dari ASCII Pengkodean.

Bit karakter A 01000001 B 01000010 

Di Linux, ICONV Alat baris perintah digunakan untuk mengonversi teks dari satu bentuk pengkodean ke yang lain.

Anda dapat memeriksa penyandian file menggunakan mengajukan perintah, dengan menggunakan -Saya atau --pantomim Bendera yang memungkinkan pencetakan string tipe mime seperti pada contoh di bawah ini:

$ file -i mobil.java $ file -i cardriver.Jawa 
Periksa pengkodean file di Linux

Sintaks untuk menggunakan ICONV adalah sebagai berikut:

$ ICONV Opsi $ ICONV Opsi -F from -encoding -t to -encoding inputFile (s) -o outputFile 

Di mana -F atau --dari kode berarti penyandian input dan -T atau --to-encoding Menentukan pengkodean output.

Untuk membuat daftar semua set karakter kode yang diketahui, jalankan perintah di bawah ini:

$ iconv -l 
Daftar Charset Kode di Linux

Konversi file dari UTF-8 ke encoding ASCII

Selanjutnya, kita akan belajar cara mengonversi dari satu skema pengkodean ke yang lain. Perintah di bawah ini dikonversi dari ISO-8859-1 ke UTF-8 Pengkodean.

Pertimbangkan file bernama memasukkan.mengajukan yang berisi karakter:

� � � � 

Mari kita mulai dengan memeriksa pengkodean karakter dalam file dan kemudian lihat konten file. Dengan cermat, kita dapat mengonversi semua karakter menjadi ASCII Pengkodean.

Setelah menjalankan ICONV Perintah, kami kemudian memeriksa konten file output dan pengkodean baru karakter seperti di bawah ini.

$ file -i input.File $ CAT INPUT.File $ iconv -f ISO-8859-1 -T UTF-8 // Input Terjemahan.file -o out.file $ cat out.file $ file -i out.mengajukan 
Konversi UTF-8 ke ASCII di Linux

Catatan: Jika string //MENGABAIKAN ditambahkan ke to-encoding, karakter yang tidak dapat dikonversi dan kesalahan ditampilkan setelah konversi.

Sekali lagi, seandainya string itu // terjemahan ditambahkan ke to-encoding seperti pada contoh di atas (ASCII // TERJEMAHAN), karakter yang dikonversi ditransliterasikan sesuai kebutuhan dan jika memungkinkan. Yang menyiratkan dalam hal bahwa karakter tidak dapat diwakili dalam set karakter target, itu dapat diperkirakan melalui satu atau lebih karakter yang terlihat serupa.

Akibatnya, karakter apa pun yang tidak dapat ditransliterasikan dan tidak dalam set karakter target diganti dengan tanda tanya (?) di output.

Konversi beberapa file ke pengkodean UTF-8

Kembali ke topik utama kami, untuk mengonversi beberapa atau semua file dalam direktori ke pengkodean UTF-8, Anda dapat menulis skrip shell kecil yang disebut Pengkodean.SH sebagai berikut:

#!/BIN/BASH #EnTER INPUT PENGENDALIAN DI SINI DARI_ENCODING = "value_here" #Output encoding (UTF -8) TO_ENCODING = "UTF -8" #Convert Convert = "ICONV -F $ From_encoding -t $ TO_ENCODING" #loop untuk mengonversi banyak file $ dari_encoding -t $ to_encoding "#loop untuk mengonversi banyak file $ from_encoding -t $ to_encoding" #loop untuk mengonversi beberapa file $ untuk file di *.txt; do $ convert "$ file" -o "$ file%.txt.UTF8.dikonversi "selesai keluar 0 

Simpan file, lalu buat skrip dapat dieksekusi. Jalankan dari direktori tempat file Anda (*.txt) berada.

$ chmod +x encoding.sh $ ./Pengkodean.SH 

Penting: Anda juga dapat menggunakan skrip ini untuk konversi umum beberapa file dari satu pengkodean yang diberikan ke yang lain, cukup bermain -main dengan nilai -nilai dari From_encoding Dan To_encoding variabel, tidak melupakan nama file output "$ file%.txt.UTF8.dikonversi ".

Untuk informasi lebih lanjut, lihat melalui ICONV Halaman Manusia.

$ man iconv 

Untuk meringkas panduan ini, memahami pengkodean dan bagaimana mengonversi dari satu skema pengkodean karakter ke yang lain adalah pengetahuan yang diperlukan untuk setiap pengguna komputer lebih untuk pemrogram ketika datang untuk berurusan dengan teks.

Terakhir, Anda dapat menghubungi kami dengan menggunakan bagian komentar di bawah ini untuk setiap pertanyaan atau umpan balik.