كيفية تمكين ملف حالة الحساسة وأسماء المجلدات على نظام التشغيل Windows 10
يقدم Windows 10 الآن نظام ملفات اختياري لحالة الأحرف ، تمامًا مثل Linux وأنظمة التشغيل الأخرى المشابهة لـ UNIX. ستتعامل كافة عمليات Windows مع الملفات والمجلدات الحساسة لحالة الأحرف بشكل صحيح إذا قمت بتمكين هذه الميزة. بمعنى آخر ، سيرون "ملف" و "ملف" كملفين منفصلين.
كيف يعمل هذا
هذه هي ميزة نظام الملفات NTFS التي يمكنك تمكينها على أساس لكل دليل. لا ينطبق ذلك على نظام الملفات بالكامل ، لذا يمكنك فقط تمكين حساسية الحالة لحافظات محددة تستخدمها لأغراض التطوير.
تمت إضافة حساسية الحالة في تحديث Windows 10 في أبريل 2018. قبل ذلك ، كان من الممكن تحميل مجلدات Windows كحالة حساسة لحالة الأحرف في بيئة Bash على Windows ، والمعروفة أيضًا باسم Windows Subsystem لنظام التشغيل Linux. لقد عمل ذلك بشكل جيد في بيئة Linux ، ولكنه كان يخلط بين تطبيقات Windows العادية. هذه الآن ميزة على مستوى نظام الملفات ، مما يعني أن جميع تطبيقات Windows ستشاهد نظام ملفات لحالة الأحرف في هذا المجلد أيضًا.
يتم تمكين هذه الميزة عبر fsutil.exe
الأمر الذي يجب تشغيله من سطر الأوامر. يمكنك القيام بذلك إما من خلال موجه الأوامر أو نافذة PowerShell. باستخدام الإعدادات الافتراضية ، يتم تكوين المجلدات التي تقوم بإنشائها داخل بيئة Linux تلقائيًا لتكون حساسة لحالة الأحرف أيضًا.
كيفية تعيين دليل على أنه حساس لحالة الأحرف
للبدء ، انقر بزر الماوس الأيمن فوق الزر "ابدأ" ، ثم حدد أمر "PowerShell (المسؤول)". إذا كنت تفضل استخدام موجه الأوامر ، فيمكنك البحث عن "موجه الأوامر" في قائمة "ابدأ" ، ثم النقر بزر الماوس الأيمن فوقه ، ثم تحديد أمر "تشغيل كمسؤول". يعمل الأمر نفسه ، بغض النظر عن بيئة سطر الأوامر التي تختارها.
قد لا تحتاج بالفعل إلى وصول المسؤول لتشغيل هذا الأمر ، بناءً على أذوناتك. من الناحية الفنية ، تحتاج إلى إذن "كتابة سمات" للدليل الذي تريد تعديله. في معظم الحالات ، هذا يعني أنك ستحتاج إلى أذونات "المسؤول" إذا كنت تريد تحرير مجلد في مكان ما خارج مجلد المستخدم - مثل c: \ project - وليس إذا كنت تريد تعديل مجلد في مكان ما داخل مجلد المستخدم الخاص بك - مثل كما في c: \ users \اسم\مشروع.
قبل المتابعة ، تأكد من عدم وجود برامج Linux قيد التشغيل تشير حاليًا إلى الدليل الذي تريد تعديله. يجب ألا تغيّر علامة حساسية الحالة في مجلد بينما يقوم برنامج Linux بالوصول إليه. إذا كان لدى أي من عمليات Linux قيد التشغيل حاليا الدليل أو أي شيء داخل الدليل مفتوح ، حتى كدليل العمل الحالي ، لن تتعرف تطبيقات Linux على التغيير وقد تحدث مشكلات.
لجعل أحد المجلدات حساسًا لحالة الأحرف ، اكتب الأمر التالي ، واستبدل "C: \ folder" بالمسار إلى المجلد:
ملف fsutil.exe setCaseSensitiveInfo C: \ تمكين مجلد
إذا كان مسار المجلد يحتوي على مسافة فيه ، قم بتضمين المسار بالكامل في علامات اقتباس ، مثل:
تمكين ملف fsutil.exe setCaseSensitiveInfo "C: \ my مجلد"
هذا لا يؤثر على المجلدات الفرعية
تؤثر علامة حساسية حالة الأحرف فقط على المجلد المحدد الذي تقوم بتطبيقه عليه. لا يتم توريثها تلقائيًا بواسطة المجلدات الفرعية الخاصة بهذا المجلد.
وبعبارة أخرى ، إذا كان لديك مجلد باسم C: \ folder ولديه مجلدات C: \ folder \ test و C: \ folder \ stuff داخله ، فإن مجرد جعل C: \ مجلد مجلد حساس لحالة الأحرف لن يجعل المجلدات الفرعية "test" و "stuff" الموجودة داخلها حساسة لحالة الأحرف. كنت بحاجة لتشغيل المناسب fsutil
أمر منفصل لجعل جميع المجلدات الثلاثة حساسة لحالة الأحرف.
أدوات لينكس إنشاء حالة المجلدات الحساسة حسب الافتراضي
تعمل الآن أدوات Linux التي تقوم بتشغيلها داخل نظام Windows الفرعي لنظام التشغيل Linux (Bash shell) على إنشاء مجلدات مع مجموعة علامة حساسة لحالة الأحرف. لذا ، سواء كنت تستخدم مكدير
أمر لإنشاء دليل داخل Bash shell أو أداة تطوير يفعل ذلك نيابةً عنك ، يتم تعيين الدليل الذي تم إنشاؤه تلقائيًا كحالة حساسة لحالة الأحرف ، حتى إذا قمت بإنشائه على نظام ملفات Windows المحمّل.
من الناحية الفنية ، يحدث هذا بسبب استخدام نظام ملفات DrvFs لبيئة Linux حالة = دير
العلم افتراضيا. ال حالة = دير
يعمل الخيار على تعيين بيئة Linux على احترام إشارة NTFS الخاصة بكل دليل ، ولضبط علامة حساسية حالة الأحرف تلقائيًا على الدلائل التي تم إنشاؤها من داخل بيئة Linux. يمكنك تغيير هذا الخيار في ملف wsl.conf ، إذا أردت.
طالما قمت بإنشاء مجلدات من بيئة Linux ، يتم إنشاؤها باستخدام إعدادات حساسية لحالة الأحرف ولا تحتاج إلى لمس الأمر fsutil.exe.
كيفية التحقق مما إذا كان الدليل حساسًا لحالة الأحرف
للتحقق مما إذا كان الدليل حساسًا لحالة الأحرف حاليًا ، قم بتشغيل الأمر التالي ، مع استبدال "C: \ folder" بالمسار إلى المجلد.
ملف ملف fsutil.exe queryCaseSensitiveInfo C: \ المجلد
إذا تم تمكين حساسية الحالة لأحد الأدلة ، فسترى أنه "تم تمكين سمة حساسة لحالة الأحرف في الدليل [مسار]." إذا كان الدليل يستخدم الحساسية القياسية لحالة Windows ، فسترى أن "سمة حساسة لحالة الأحرف على الدليل [path] معطّل. "
كيفية جعل دليل حالة حساسة
للتراجع عن التغيير وجعل حالة الدليل غير حساسة مرة أخرى (كما يقصدها بيل جيتس) ، قم بتشغيل الأمر التالي ، مع استبدال "C: \ folder" بالمسار إلى المجلد.
ملف fsutil.exe setCaseSensitiveInfo C: \ تعطيل المجلد
إذا حاولت تعطيل حساسية الحالة لأحد المجلدات التي تحتوي على ملفات بأسماء قد تتصادم ، فستظهر لك رسالة "خطأ: الدليل ليس فارغًا". ستحتاج إلى إزالة الملفات المتعارضة أو إعادة تسميتها قبل المتابعة.