Aktiver versalfølsom tilstand for mapper i Windows 10
Som du måske allerede ved, behandler Windows-filsystemet, NTFS, fil- og mappenavne som ufølsomme for store og små bogstaver. For eksempel, for OS og apps er MyFile.txt og myfile.txt den samme fil. Men tingene er anderledes i Linux. For dette OS er disse to forskellige filer. Denne forskel i adfærd kan skabe problemer for WSL-brugere. For at løse dem inkluderer Windows 10 muligheden for at aktivere versalfølsom tilstand for mapper.
Reklame
Hvis du har brugt Windows-undersystem til Linux, er du sikkert klar over, at det giver dig mulighed for at behandle dine Windows-filsystemer (monteret under /mnt/c, /mnt/d osv.) som følsomme mellem store og små bogstaver. Det betyder blandt andet, at du kan oprette filer, hvis navne kun afviger fra store og små bogstaver (f.eks. foo.txt og FOO.TXT).
Det var dog ikke rigtig muligt at bruge disse filer i Windows. Da Windows-applikationer behandler filsystemet som ufølsomt mellem store og små bogstaver, kan de ikke skelne mellem filer, hvis navne kun afviger i store og små bogstaver. Mens File Explorer ville vise begge filer, ville kun den ene blive åbnet, uanset hvilken du klikkede på.
Startende med Windows insider build 17093 er der en ny måde at håndtere store og små bogstaver på i Windows: versalfølsomhed pr. mappe. Denne evne er blevet tilføjet for at give brugeren bedre interoperabilitet ved brug af store og små bogstaver. Du kan også bruge det med almindelige Windows-applikationer. Fra Windows 10 Build 17110 er denne adfærd standard.
Flere detaljer
Versalfølsomhed i Windows
Windows NT-familien af operativsystemer (inklusive Windows 10) har altid haft evnen til at udføre store og små bogstaver i filsystemoperationer. Ansøgninger kan bestå FILE_FLAG_POSIX_SEMANTICS
flag til Opret fil
API for at angive, at de ønsker, at stien skal behandles som store og små bogstaver. Men af kompatibilitetsårsager er der en global registreringsnøgle, der tilsidesætter denne adfærd; når denne tast er indstillet, er alle filhandlinger ufølsomme for store og små bogstaver, selv når FILE_FLAG_POSIX_SEMANTICS
flag er angivet. Siden Windows XP har dette været standard.
Windows-undersystemet til Linux bruger en anden mekanisme, som selv omgår denne registreringsnøgle, hvilket giver os mulighed for at udføre store og små bogstavsfølsomme filsystemoperationer. Dette er det, der gør det muligt for Linux-applikationer, der kører i WSL, at bruge filnavne, der kun adskiller sig fra sag til sag, ligesom de kan på rigtig Linux, selv med det globale registreringsnøglesæt.
Desværre efterlader dette dig med filer, der ikke kan tilgås af Windows-applikationer. Selvom du kunne ændre den globale registreringsnøgle, ville det stadig kun fungere for de programmer, der bruger FILE_FLAG_POSIX_SEMANTICS
, og dette ville ændre adfærden for alle filer på alle drev, hvilket måske ikke er tilsigtet og kan ødelægge nogle programmer.
Forskellighed mellem store og små bogstaver pr. mappe
For at løse dette problem har Microsoft tilføjet et nyt flag, der skelner mellem store og små bogstaver, som kan anvendes på mapper. For mapper, der har dette flag sat, er alle handlinger på filer i det pågældende bibliotek skelet mellem store og små bogstaver, uanset om FILE_FLAG_POSIX_SEMANTICS
blev specificeret. Det betyder, at hvis du har to filer, der kun adskiller sig fra store og små bogstaver i en mappe, der er markeret som forskel på store og små bogstaver, vil alle applikationer kunne få adgang til dem.
Aktiver versalfølsom tilstand for mapper
For at aktivere eller deaktivere denne funktion skal du bruge den indbyggede fsutil.exe-app.
For at aktivere versalfølsom tilstand for mapper, gør følgende.
- Åben en forhøjet kommandoprompt.
- Skriv følgende kommando:
fsutil.exe fil setCaseSensitiveInfo "fuld sti til din mappe" aktivere
Erstat stidelen med den korrekte sti, der matcher din pc.
For eksempel,fsutil.exe fil setCaseSensitiveInfo "C:\data\Winaero\Linux" aktiverer
- Du er færdig.
Nu kan du oprette to filer med samme navn og med kun en forskel mellem store og små bogstaver. Windows 10 vil behandle dem korrekt i denne særlige mappe.
Kør kommandoen for at se funktionsstatus for en mappe
fsutil.exe fil queryCaseSensitiveInfo "fuld sti til din mappe"
For eksempel,
fsutil.exe fil queryCaseSensitiveInfo "C:\data\Winaero\Linux"
Du vil se noget som dette:
Endelig, for at deaktivere versalfølsom tilstand for mapper, kør den næste kommando i kommandoprompten åbnet som administrator:
fsutil.exe fil setCaseSensitiveInfo "C:\data\Winaero\Linux" deaktiver
Brug den korrekte mappesti, og du er færdig.
Bemærk: Deaktivering af CaseSensitiveInfo-attributten for ikke-tomme mapper understøttes ikke. Du skal fjerne alle filer fra mappen, før du deaktiverer den.
Det er det.