আমি FF FE
বিওএম এর সাথে একটি .csv ফাইল পেয়েছি :
$ head -n1 dotan.csv | hd
00000000 ff fe 41 00 64 00 20 00 67 00 72 00 6f 00 75 00 |..A.d. .g.r.o.u.|
যখন ব্যবহার awk
আমি নাল বাইট, যা আমি সন্দেহ একটি গুচ্ছ পেয়ে করছি এটা বিশ্লেষণ করতে বাইট আদেশের কারণে হয়। আমি কীভাবে এই ফাইলটিতে বাইট অর্ডারটি (সিএলআই ব্যবহার করে) অদলবদল করতে পারি যাতে সাধারণ সরঞ্জামগুলি এটির সাথে কাজ করে?
মনে রাখবেন যে আমি মনে করি যে এই ফাইলটি কেবলমাত্র ASCII অক্ষর (বিওএম ব্যতীত) তবে আমি এটি নিশ্চিত করতে পারি না grep
যে এটি বাইনারি ফাইল বলে মনে করে:
$ grep -P '^[\x00-\x7f]' dotan.csv
Binary file dotan.csv matches
ভিআইএম-তে একই স্ট্রিং অনুসন্ধান করা প্রতিটি চরিত্রের মিল দেখায় !
iconv
ASCII তে রূপান্তর করতে ব্যবহার করে \ x00 মানগুলি থেকে মুক্তি পাওয়া যায় না, আসলে এটি সমস্যাটিকে আরও খারাপ করে তোলে কারণ এখন তারা ইউটিএফ -8 এর পরিবর্তে নাল বাইটের মতো দেখায়!
$ iconv -f UTF-8 -t ASCII dotan.csv > fixed.txt
iconv: illegal input sequence at position 0
$ iconv -f UTF-8 -t ASCII//IGNORE dotan.csv > fixed.txt
$ head -n1 fixed.txt | hd
00000000 41 00 64 00 20 00 67 00 72 00 6f 00 75 00 70 00 |A.d. .g.r.o.u.p.|
আমি কীভাবে এই ফাইলটিতে বাইট ক্রমটি পরিবর্তন করতে পারি (সিএলআই ব্যবহার করে) যাতে সাধারণ সরঞ্জামগুলি এটির সাথে কাজ করে?