Как работи това
Това е функция на файловата система за NTFS, която можете да активирате на база директория. Това не важи за цялата ви файлова система, така че можете просто да разрешите чувствителността на делата за конкретни папки, които използвате за целите на разработката.
Чувствителността на делата бе добавена в Актуализация на Windows 10 от април 2018 г. Преди това е възможно да се монтират папките на Windows като чувствителни към малки и големи букви в средата на Bash в Windows, известен също като Windows Subsystem for Linux. Това работи добре в средата на Linux, но обърква нормалните приложения на Windows. Това вече е функция на ниво файлова система, което означава, че всички приложения на Windows ще виждат файловата система, която е чувствителна към малки и големи букви в тази папка.
Тази функция е активирана чрез
fsutil.exe
команда, която трябва да стартирате от командния ред. Можете да го направите от прозореца на командния ред или PowerShell. При настройките по подразбиране папките, които създавате в средата на Линукс, са автоматично конфигурирани и за малки и малки букви.
Как да зададете директория като чувствителна към делата
За да започнете, щракнете с десния бутон на мишката върху бутона Старт и изберете командата "PowerShell (Administrator)". Ако предпочитате да използвате командния ред, можете да потърсите "Command Prompt" в менюто "Старт", щракнете с десния бутон върху него и след това изберете командата "Пусни като администратор". Командата работи същата, без значение коя среда на команден ред избирате.
Възможно е да не се нуждаете от администраторски достъп, за да стартирате тази команда, в зависимост от вашите разрешения. Технически, имате нужда от разрешението "write attributes" за директорията, която искате да промените. В повечето случаи това означава, че ще имате нужда от администраторски разрешения, ако искате да редактирате папка някъде извън потребителската си папка - например c: project - а не ако искате да промените папка някъде във вашата потребителска папка - например като в c: users ИМЕ Проект.
За да направите палитрата на папката чувствителна, напишете следната команда, замествайки "C: folder" с пътя към папката:
fsutil.exe file setCaseSensitiveInfo C:folder enable
Ако пътят на папката има интервал, прикрепете целия път в кавички, както е така:
fsutil.exe file setCaseSensitiveInfo 'C:my folder' enable
Това не засяга подпапки
Флагът за чувствителност на кутията засяга само конкретната папка, на която я прилагате. То не е автоматично наследено от подпапките на тази папка.
С други думи, ако имате папка, наречена C: папка и има C: folder test и C: folder stuff подпапки вътре в нея, просто да направите папката на папката C: чувствителна, "Тест" и "неща" подпапки вътре в него са чувствителни. Трябва да изпълните подходящото
fsutil
командата отделно, за да се направят трите папки чувствителни.
Инструменти на Linux Създаване на папки, чувствителни към делата по подразбиране
Инструментите на Linux, които пускате в Windows Subsystem for Linux (Bash shell), сега създават папки с набор от флагове от малки букви. Така че, независимо дали използвате
mkdir
команда за създаване на директория в Bash shell или инструмент за разработка я прави за Вас, създадената директория автоматично се настройва като малък или малък диапазон от малки букви - дори и да я създадете на монтираната файлова система Windows.
Технически, това се случва, защото файловата система DrvFs за Linux среда използва
case=dir
флаг по подразбиране. Най-
case=dir
опцията задава средата на Линукс, за да спазва флага на NTFS на всяка директория и автоматично да настрои флага за чувствителност на касетата на директории, създадени от средата на Linux. Можете да промените тази опция във вашия wsl.conf файл, ако желаете.
Докато създавате папки от средата на Линукс, те са създадени с правилните настройки за чувствителност на случаите и никога не е нужно да докосвате командата fsutil.exe.
Как да проверите дали даден Directory е чувствителен към делата
За да проверите дали директорията в момента е чувствителна към малки и големи букви, изпълнете следната команда, замествайки "C: folder" с пътя към папката.
fsutil.exe file queryCaseSensitiveInfo C:folder
Ако чувствителността на буквите е разрешена за директория, ще видите, че е активиран "Атрибут за малки и малки букви в директорията [path]". Ако директорията използва стандартната Windows нечувствителност на буквите, ще видите, че " директорията [path] е деактивирана."
Как да направите регистър случай нечувствителен
За да отмените промените си и да направите регистърът на буквите директно ненужен (както го е планирал Бил Гейтс), изпълнете следната команда, замествайки "C: folder" с пътя към папката.
fsutil.exe file setCaseSensitiveInfo C:folder disable