এই প্রশ্নের দ্বারা অনুপ্রাণিত হয়ে , আমি iconv
বিএমএস দিয়ে এবং নির্দিষ্ট অন্তর্নিহিততার সাথে ইউটিএফ -16 আউটপুট উত্পন্ন করতে কমান্ডটি ব্যবহার করতে পারি ?
iconv
অন্য এক এনকোডিং থেকে কমান্ড ধর্মান্তরিত পাঠ্য।
উদাহরণ স্বরূপ:
echo hello | iconv -f ascii -t utf-16
এর UTF-16 উপস্থাপনা উত্পন্ন করে "hello\n"
।
ইউটিএফ -16 ফাইলগুলি প্রায়শই, তবে সর্বদা নয়, বাইট অর্ডার মার্ক (বিওএম) দিয়ে শুরু করুন যা ইউনিকোড চরিত্রের 2-বাইট এনকোডিং U+FEFF
। আপনি চেক প্রথম দুই বাইট কিনা দ্বারা BOM সঙ্গে একটি হল UTF-16 ফাইলের endianness নির্ধারণ করতে পারেন FE FF
বা FF FE
।
iconv
কমান্ড হল UTF-16 আউটপুট জেনারেট করার জন্য বেশ কিছু অপশন রয়েছে:
$ iconv --list | grep -i utf-16
UTF-16//
UTF-16BE//
UTF-16LE//
এই আদেশ:
echo hello | iconv -f ascii -t utf-16be
বিওএম ছাড়াই বিগ-এন্ডিয়ান ইউটিএফ -16 উত্পন্ন করে ; দেখে মনে হচ্ছে যে আপনি যদি শেষের দিকটি নির্দিষ্ট করে থাকেন তবে আপনাকে আউটপুটে এটি নির্দেশ করার দরকার নেই। একইভাবে, utf-16le
বিওএম ছাড়াই লিটল-এডিয়ান ইউটিএফ -16 উত্পন্ন করে।
এই:
echo hello | iconv -f ascii -t utf-16
(আমার x86 উবুন্টু সিস্টেমে) বিওএম সহ লিটল এন্ডিয়ান ইউটিএফ -16 উত্পন্ন করে - তবে আমি একটি বিএম-এর সাথে বিগ-এন্ডিয়ান ইউটিএফ -16 জেনারেট করার অনুরূপ একটি কমান্ডের রিপোর্ট দেখেছি, এমনকি সামান্য-এডিয়ান সিস্টেমেও।
আমি সবসময় ম্যানুয়ালি বিওএম ব্যবহার করতে পারি utf-16be
বা utf-16le
প্রেন্ডেন্ড করতে পারি তবে আমি এমন একটি সমাধান খুঁজছি যা কেবল iconv
কমান্ডটি ব্যবহার করে ।
আরেকটি কর্মসূচী, যদি আপনি জানেন যে শেষেরতাটি কী -t utf-16
উত্পন্ন করে, তা হ'ল:
echo hello | iconv -f ascii -t utf-16 | dd conv=swab 2>/dev/null
আমি যা ব্যবহার করতে চাই তা হ'ল:
iconv -f ascii -t utf-16bebom # big-endian with BOM
iconv -f ascii -t utf-16lebom # little-endian with BOM
কিন্তু iconv
এটি সমর্থন করে না।
সম্পাদনা:
X86 ম্যাক ওএসএক্স সিস্টেমে অ্যাক্সেস সহ কেউ কি নীচের কমান্ডের (অনুলিপি-আটকানো) আউটপুট দেখাচ্ছে এমন মন্তব্য পোস্ট করতে পারেন?
echo hello | iconv -f ascii -t utf-16 | od -x
iconv
- এবং কেন অবাক হয়ে যায় -t utf-16
বলে মনে হচ্ছে অবাক হয়ে যায়।
iconv -f UTF-8 -t UTF-16
, একটি বিওএম সহ বিগ-এন্ডিয়ান ইউটিএফ -১ gene তৈরি করে সামান্য-এন্ডিয়ান সিস্টেম (ম্যাকোস) চালান, যা খুব অদ্ভুত বলে মনে হয়।