একটি ডিরেক্টরিতে নিম্নলিখিত ফাইলগুলি তৈরি করুন।
$ touch .a .b a b A B 你好嗎
আমার ডিফল্ট ls
অর্ডার নেতৃস্থানীয় বিন্দুগুলির উপস্থিতি উপেক্ষা করে অন্যান্য ফাইলগুলির সাথে মিশে যায়।
$ ls -Al
total 0
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 a
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 .a
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 A
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 b
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 .b
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 B
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:06 你好嗎
আমি প্রথমে ডটফাইলগুলি পরিবর্তন করতে পারি । LC_COLLATE
$ LC_COLLATE=C ls -Al
total 0
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 .a
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 .b
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 A
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 B
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 a
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:03 b
-rw-r--r-- 1 sparhawk sparhawk 0 Jun 8 17:06 你好嗎
দুর্ভাগ্যক্রমে এটি বাছাই অর্ডার কে কেস-সংবেদনশীল করে তোলে, যেমন A
এবং B
পূর্ববর্তী a
এবং b
। কেস-সংবেদনশীল ( A
এবং a
পূর্ববর্তী B
এবং b
) থাকা অবস্থায় প্রথমে ডটফাইলগুলি মুদ্রণের কোনও উপায় আছে কি ?
সম্পাদনা করুন: LC_COLLATE সংশোধন করার চেষ্টা করা হচ্ছে
এখনও পর্যন্ত কোনও উত্তর ls
সহজেই কার্যকারিতা সম্পূর্ণরূপে প্রতিলিপি করে না । সম্ভবত, আমি তাদের কিছু ফাংশনে আবদ্ধ করতে পারি, তবে এটিতে (উদাহরণস্বরূপ) কোনও যুক্তি দিয়ে কীভাবে কাজ করা যায় সে সম্পর্কিত কোনও বিশদ কোড অন্তর্ভুক্ত করতে হবে vs বা কীভাবে একটি সুস্পষ্ট -d
পতাকা মোকাবেলা করতে হয় ।
বিকল্পভাবে, আমি ভেবেছিলাম যে সম্ভবত LC_COLLATE
এটি ব্যবহার করার চেয়ে আরও ভাল কিছু হতে পারে । যাইহোক, আমি যে কাজ করতে পারে বলে মনে হয় না। আমি বর্তমানে ব্যবহার করছি LC_COLLATE="en_AU.UTF-8"
। আমি পরীক্ষা করেছিলাম /usr/share/i18n/locales/en_AU
(যদিও আমি নিশ্চিত নই যে এটি সঠিক ফাইল কিনা, কারণ আমি এর কোনও উল্লেখ দেখতে পাচ্ছি না UTF-8
); আমি নিম্নলিখিত খুঁজে পেয়েছি।
LC_COLLATE
copy "iso14651_t1"
END LC_COLLATE
/usr/share/i18n/locales/iso14651_t1
রয়েছে copy "iso14651_t1_common"
। অবশেষে, /usr/share/i18n/locales/iso14651_t1_common
রয়েছে
<U002E> IGNORE;IGNORE;IGNORE;<U002E> # 47 .
আমি এই লাইনটি মুছে ফেলেছি, দৌড়েছি sudo locale-gen
এবং আমার কম্পিউটার পুনরায় চালু করেছি। দুর্ভাগ্যক্রমে, এটি কিছুই পরিবর্তন করেনি।