Aktiver modus for små og store bokstaver for mapper i Windows 10
Som du kanskje allerede vet, behandler Windows-filsystemet, NTFS, fil- og mappenavn som ufølsomme for store og små bokstaver. For eksempel, for OS og apper, er MyFile.txt og myfile.txt den samme filen. Men ting er annerledes i Linux. For dette operativsystemet er dette to forskjellige filer. Denne forskjellen i oppførsel kan skape problemer for WSL-brukere. For å løse dem inkluderer Windows 10 muligheten til å aktivere store og små bokstaver for mapper.
Hvis du har brukt Windows-undersystem for Linux, er du sannsynligvis klar over at den lar deg behandle Windows-filsystemene dine (montert under /mnt/c, /mnt/d, etc.) som store og små bokstaver. Dette betyr blant annet at du kan lage filer hvis navn kun avviker fra store og små bokstaver (f.eks. foo.txt og FOO.TXT).
Det var imidlertid ikke mulig å bruke disse filene i Windows. Siden Windows-applikasjoner behandler filsystemet som ufølsomt for store og små bokstaver, kan de ikke skille mellom filer hvis navn kun er forskjellige i store og små bokstaver. Mens File Explorer ville vise begge filene, ville bare én bli åpnet uavhengig av hvilken du klikket.
Fra og med Windows insider build 17093, er det en ny måte å håndtere store og små bokstaver på i Windows: versalsensitivitet per katalog. Denne muligheten er lagt til for å gi brukeren bedre interoperabilitet ved bruk av store og små bokstaver. Du kan også bruke den med vanlige Windows-applikasjoner. Fra og med Windows 10 Build 17110 er denne virkemåten standard.
Mer informasjon
Store og små bokstaver i Windows
Windows NT-familien av operativsystemer (inkludert Windows 10) har alltid hatt muligheten til å utføre store og små bokstaver i filsystemoperasjoner. Søknader kan bestå FILE_FLAG_POSIX_SEMANTICS
flagg til Opprett fil
API for å indikere at de vil at banen skal behandles som store og små bokstaver. Av kompatibilitetsgrunner er det imidlertid en global registernøkkel som overstyrer denne virkemåten; når denne nøkkelen er satt, er alle filoperasjoner ufølsomme for store og små bokstaver, selv når FILE_FLAG_POSIX_SEMANTICS
flagget er spesifisert. Siden Windows XP har dette vært standard.
Windows-undersystemet for Linux bruker en annen mekanisme, som selv omgår den registernøkkelen, slik at vi kan utføre store og små bokstaver i filsystemoperasjoner. Dette er det som gjør at Linux-applikasjoner som kjører i WSL kan bruke filnavn som bare varierer fra tilfelle til tilfelle, akkurat som de kan på ekte Linux, selv med det globale registernøkkelsettet.
Dessverre etterlater dette deg med filer som ikke kan nås av Windows-applikasjoner. Selv om du kan endre den globale registernøkkelen, vil det fortsatt bare fungere for de programmene som bruker FILE_FLAG_POSIX_SEMANTICS
, og dette vil endre virkemåten for alle filer på alle stasjoner, noe som kanskje ikke er ment og kan ødelegge enkelte programmer.
Per-katalog store og små bokstaver
For å løse dette problemet la Microsoft til et nytt flagg som skiller mellom store og små bokstaver som kan brukes på kataloger. For kataloger som har dette flagget satt, er alle operasjoner på filer i den katalogen sensitive for store og små bokstaver, uavhengig av om FILE_FLAG_POSIX_SEMANTICS
ble spesifisert. Dette betyr at hvis du har to filer som bare skiller seg fra store og små bokstaver i en katalog som er merket som skiller mellom store og små bokstaver, vil alle applikasjoner kunne få tilgang til dem.
Aktiver modus for små og store bokstaver for mapper
For å aktivere eller deaktivere denne funksjonen, bør du bruke den innebygde fsutil.exe-appen.
For å aktivere modus for små og store bokstaver for mapper, gjør følgende.
- Åpen en forhøyet ledetekst.
- Skriv inn følgende kommando:
fsutil.exe fil setCaseSensitiveInfo "full bane til mappen din" aktiver
Erstatt banedelen med den riktige banen som samsvarer med PC-en din.
For eksempel,fsutil.exe fil setCaseSensitiveInfo "C:\data\Winaero\Linux" aktiver
- Du er ferdig.
Nå kan du lage to filer med samme navn og med bare en forskjell mellom små og store bokstaver. Windows 10 vil behandle dem riktig i denne mappen.
For å se funksjonsstatusen for en mappe, kjør kommandoen
fsutil.exe fil queryCaseSensitiveInfo "full bane til mappen din"
For eksempel,
fsutil.exe fil queryCaseSensitiveInfo "C:\data\Winaero\Linux"
Du vil se noe slikt:
Endelig, for å deaktivere store og små bokstaver for mapper, kjør neste kommando i ledeteksten åpnet som administrator:
fsutil.exe fil setCaseSensitiveInfo "C:\data\Winaero\Linux" deaktiver
Bruk riktig mappebane og du er ferdig.
Merk: Deaktivering av CaseSensitiveInfo-attributtet for ikke-tomme mapper støttes ikke. Du må fjerne alle filer fra mappen før du deaktiverer den.
Det er det.