If-Koubou

Как да активирате имената на файловете и папките, чувствителни към делата, на Windows 10

Как да активирате имената на файловете и папките, чувствителни към делата, на Windows 10 (Как да)

Windows 10 вече предлага допълнителна случайно-чувствителна файлова система, точно както Linux и други UNIX-подобни операционни системи. Всички процеси на Windows ще обработват правилно файловете и папките, които са чувствителни към малки и главни букви, ако активирате тази функция. С други думи, те ще видят "файл" и "файл" като два отделни файла.

Как работи това

Това е функция на файловата система за 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 \ИМЕ\ Проект.

Преди да продължите, уверете се, че понастоящем няма инсталиран софтуер за Linux, който да се отнася към директорията, която сте на път да променяте. Не трябва да променяте флага за чувствителност на касетата в папка, докато софтуерът на Linux го осъществява. Ако някоя от работещите процеси на Линукс има директория или нещо в директорията отворена, дори и като текуща работна директория, Linux приложенията няма да разпознаят промяната, а проблемите могат да възникнат.

За да направите палитрата на папката чувствителна, напишете следната команда, замествайки "C: \ folder" с пътя към папката:

Файл fsutil.exe setCaseSensitiveInfo C: \ разрешете папката

Ако пътят на папката има интервал, прикрепете целия път в кавички, както е така:

fsutil.exe файла setCaseSensitiveInfo "C: \ my folder" разрешете

Това не засяга подпапки

Флагът за чувствителност на кутията засяга само конкретната папка, на която я прилагате. То не е автоматично наследено от подпапките на тази папка.

С други думи, ако имате папка, наречена C: \ папка и има C: \ folder \ test и C: \ folder \ stuff подпапки вътре в нея, просто да направите папката на папката C: \ чувствителна, "Тест" и "неща" подпапки вътре в него са чувствителни. Трябва да изпълните подходящото fsutil командата отделно, за да се направят трите папки чувствителни.

Инструменти на Linux Създаване на папки, чувствителни към делата по подразбиране

Инструментите на Linux, които пускате в Windows Subsystem for Linux (Bash shell), сега създават папки с набор от флагове от малки букви. Така че, независимо дали използвате защитен режим команда за създаване на директория в Bash shell или инструмент за разработка я прави за Вас, създадената директория автоматично се настройва като малък или малък диапазон от малки букви - дори и да я създадете на монтираната файлова система Windows.

Технически, това се случва, защото файловата система DrvFs за Linux среда използва При = реж флаг по подразбиране. Най- При = реж опцията задава средата на Линукс, за да спазва флага на NTFS на всяка директория и автоматично да настрои флага за чувствителност на касетата на директории, създадени от средата на Linux. Можете да промените тази опция във вашия wsl.conf файл, ако желаете.

Докато създавате папки от средата на Линукс, те са създадени с правилните настройки за чувствителност на случаите и никога не е нужно да докосвате командата fsutil.exe.

Как да проверите дали даден Directory е чувствителен към делата

За да проверите дали директорията в момента е чувствителна към малки и големи букви, изпълнете следната команда, замествайки "C: \ folder" с пътя към папката.

fsutil.exe файла queryCaseSensitiveInfo C: \ папка

Ако чувствителността на буквите е разрешена за директория, ще видите, че е активиран "Атрибут за малки и малки букви в директорията [path]". Ако директорията използва стандартната Windows нечувствителност на буквите, ще видите, че " директорията [path] е деактивирана. "

Как да направите регистър случай нечувствителен

За да отмените промените си и да направите регистърът на буквите директно ненужен (както го е планирал Бил Гейтс), изпълнете следната команда, замествайки "C: \ folder" с пътя към папката.

Файлът fsutil.exe setCaseSensitiveInfo C: \ folder е деактивиран

Ако се опитате да деактивирате чувствителността на папки за папка, която съдържа файлове с имена, които биха се сблъскали, ще видите съобщение "Грешка: директорията не е празна". Преди да продължите, ще трябва да премахнете или преименувате конфликтните файлове.