Jak zmusić system Windows do rozróżniania wielkości liter w plikach i folderach

Jedną z wielu zalet systemów UNIX’owych jest ich umiejętność rozróżniania wielkość liter w plikach i folderach. Oznacza to po prostu, że w tych OS’ach np. plik test.txt oraz TEST.txt traktowane są jako dwa odrębne pliki, które mogą rezydować w tej samej lokalizacji.

Jak jeszcze nie wiecie o co mi chodzi macie screenshot z linuxa (openSUSE):

Jak widzicie, w katalogu Dokumenty stworzyłem dwa wyżej wymienione pliki i Linux nie widzi w tym żadnego problemu 😉

W Windows taka sama próba zakończy się monitem z prośbą o zmianę nazwy (bądź podobnym, w każdym razie system nie pozwoli nam na stworzenie dwóch tak samo nazywających się plików)Nie wiem czy zdajecie sobie sprawę, że 64 bitowy Windows 10 Pro natywnie wspiera aplikacje Linuxowe (chociaż to nad wyraz „dumnie” powiedziane, gdyż win 10 co prawda pozwala na uruchamianie narzędzi linuxowych, ale nie spodziewajcie się cudów…) Więc Winda musiała „nauczyć” się rozróżniania wielkości liter w plikach i folderach. Bez tego większość narzędzi pisanych pod Linux’a po prostu pogubi się w emulowanym środowisku…

Aby szybko włączyć podsystem w wierszu polecenia wklepcie:

DISM.exe /Online /Enable-Feature /All /FeatureName:Microsoft-Windows-Subsystem-Linux /NoRestart

Albo, korzystając z PowerShell:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

Po czym ponownie uruchamiamy komputer.

Przechodzimy do sedna. Wiosenna aktualizacja (April Update 2018) umożliwia nam nadanie folderom praw do rozróżniania wielkości liter za pomocą narzędzia fsutil, aby go wykorzystać uruchamiamy wiersz polecenia (albo powershell, tak jak na screenach) i wydajemy polecenie:

fsutil.exe file setCaseSensitiveInfo "lokalizacja" enable


Na moim przykładzie stworzyłem na dysku systemowym folder o nazwie test który rozróżniania wielkość liter w plikach i folderach, więc pozwolił mi dokładnie na to samo co pingwinek:


Warto zaznaczyć, że nadanie praw działa tylko na wybrany przez nas katalog. Wszystkie katalogi podrzędne które utworzymy w takim folderze nie będą posiadały tego „fejczeru”.

Aby przywrócić standardową funkcjonalność folderu wklepujemy polecenie:

fsutil.exe file setCaseSensitiveInfo "lokalizacja" disable

Na koniec podpowiem wam, że poleceniem:

fsutil.exe file queryCaseSensitiveInfo "lokalizacja"

Sprawdzamy czy wybrany folder rozróżnia wielkość liter w plikach i folderach.

4 komentarze do “Jak zmusić system Windows do rozróżniania wielkości liter w plikach i folderach

  • 14 czerwca 2018 o 11:39
    Permalink

    Ciekawostka dość interesująca, ale raczej nie przydałaby mi się ta opcja na co dzień.

    Odpowiedz
    • Kabson
      14 czerwca 2018 o 17:28
      Permalink

      Sam nie mam pojęcia, to wykorzystuje subsystem linuksowy i z tego co mi wiadomo M$ nie zamierza tego wprowadzić do powszechnego użytku.

  • InVaLid
    12 czerwca 2018 o 17:14
    Permalink

    No dobrze, ale jak to sensownie wykorzystać ? Myślę nad tym już 20 minut i nie mam pojęcia po co coś takiego w Winzgrozie 😐

    Odpowiedz
    • Kabson
      12 czerwca 2018 o 19:18
      Permalink

      To nie jest zgrozie potrzebne ale subsystemowi linuksowemu. Traktuj ten wpis jako ciekawostkę.

Dodaj komentarz

This site uses Akismet to reduce spam. Learn how your comment data is processed.