Ota käyttöön kansioiden kirjainkoon erottelutila Windows 10:ssä
Kuten ehkä jo tiedät, Windowsin tiedostojärjestelmä, NTFS, käsittelee tiedostojen ja kansioiden nimiä kirjainkoolla. Esimerkiksi käyttöjärjestelmälle ja sovelluksille MyFile.txt ja myfile.txt ovat sama tiedosto. Asiat ovat kuitenkin toisin Linuxissa. Tässä käyttöjärjestelmässä nämä ovat kaksi eri tiedostoa. Tämä ero käyttäytymisessä voi aiheuttaa ongelmia WSL-käyttäjille. Niiden ratkaisemiseksi Windows 10 sisältää mahdollisuuden ottaa käyttöön kansioiden kirjainkoon erottelutilan.
Mainos
Jos olet käyttänyt Windows-alijärjestelmä Linuxille, olet luultavasti tietoinen siitä, että sen avulla voit käsitellä Windows-tiedostojärjestelmiäsi (asennettuna /mnt/c, /mnt/d jne.) kirjainkoolla. Tämä tarkoittaa muun muassa sitä, että voit luoda tiedostoja, joiden nimet eroavat vain kirjainkoon mukaan (esim. foo.txt ja FOO.TXT).
Näiden tiedostojen käyttäminen Windowsissa ei kuitenkaan ollut todella mahdollista. Koska Windows-sovellukset käsittelevät tiedostojärjestelmää isot ja pienet kirjaimet erottelevana, ne eivät voi erottaa tiedostoja, joiden nimet eroavat vain kirjainkoosta. Vaikka File Explorer näyttäisi molemmat tiedostot, vain yksi avattaisiin riippumatta siitä, kumpaa napsautit.
Windowsin sisäpiiriversiosta 17093 alkaen on uusi tapa käsitellä kirjainkokoisia tiedostoja Windowsissa: hakemistokohtainen kirjainherkkyys. Tämä ominaisuus on lisätty antamaan käyttäjälle parempi yhteentoimivuus käytettäessä kirjainkokoisia tiedostoja. Voit myös käyttää sitä tavallisten Windows-sovellusten kanssa. Windows 10 Build 17110:stä alkaen tämä toiminta on oletusarvo.
Lisätietoja
Kirjainten herkkyys Windowsissa
Windows NT -käyttöjärjestelmäperheellä (mukaan lukien Windows 10) on aina ollut kyky suorittaa kirjainkoon erottelevia tiedostojärjestelmän toimintoja. Hakemukset voivat läpäistä FILE_FLAG_POSIX_SEMANTICS
lippu kohdalle Luo tiedosto
API ilmoittaa, että he haluavat polun käsittelevän isot ja pienet kirjaimet. Yhteensopivuussyistä on kuitenkin olemassa yleinen rekisteriavain, joka ohittaa tämän toiminnan. kun tämä avain on asetettu, kaikki tiedostotoiminnot eivät erota kirjainkoosta, vaikka FILE_FLAG_POSIX_SEMANTICS
lippu on määritetty. Windows XP: stä lähtien tämä on ollut oletusasetus.
Windows-alijärjestelmä Linuxille käyttää toista mekanismia, joka itse ohittaa kyseisen rekisteriavaimen, jolloin voimme suorittaa tiedostojärjestelmän toimintoja, joissa kirjainkoolla on merkitystä. Tämän ansiosta WSL: ssä toimivat Linux-sovellukset voivat käyttää tiedostonimiä, jotka eroavat vain kirjainkoon mukaan, aivan kuten todellisessa Linuxissa, jopa globaalilla rekisteriavaimella.
Valitettavasti tämä jättää sinulle tiedostoja, joita Windows-sovellukset eivät voi käyttää. Vaikka voit muuttaa yleisen rekisteriavaimen, se toimisi silti vain niille sovelluksille, jotka käyttävät FILE_FLAG_POSIX_SEMANTICS
, ja tämä muuttaisi kaikkien asemien kaikkien tiedostojen toimintaa, mikä ei ehkä ole tarkoitettua ja saattaa rikkoa joitain sovelluksia.
Hakemistokohtainen kirjainherkkyys
Tämän ongelman ratkaisemiseksi Microsoft lisäsi uuden kirjainkoon erottelevan lipun, jota voidaan käyttää hakemistoissa. Hakemistoissa, joissa tämä lippu on asetettu, kaikki kyseisen hakemiston tiedostojen toiminnot ovat isot ja pienet kirjaimet erottuvat riippumatta siitä, onko FILE_FLAG_POSIX_SEMANTICS
täsmennettiin. Tämä tarkoittaa, että jos sinulla on kaksi tiedostoa, jotka eroavat toisistaan vain kirjainkoon mukaan hakemistossa, joka on merkitty kirjainkoolla, kaikki sovellukset voivat käyttää niitä.
Ota käyttöön kansioiden kirjainkoon erottelutila
Voit ottaa tämän ominaisuuden käyttöön tai poistaa sen käytöstä käyttämällä sisäänrakennettua fsutil.exe-sovellusta.
Ota käyttöön kansioiden kirjainkoon erottelutila, tee seuraava.
- Avata korotettu komentokehote.
- Kirjoita seuraava komento:
fsutil.exe-tiedosto setCaseSensitiveInfo "koko polku kansioon" ottaa käyttöön
Korvaa polkuosa oikealla polkulla, joka vastaa tietokonettasi.
Esimerkiksi,fsutil.exe-tiedosto setCaseSensitiveInfo "C:\data\Winaero\Linux" ota käyttöön
- Olet valmis.
Nyt voit luoda kaksi tiedostoa samalla nimellä ja vain kirjainkoon erolla. Windows 10 käsittelee ne oikein tässä kansiossa.
Näet kansion ominaisuuden tilan suorittamalla komennon
fsutil.exe-tiedosto queryCaseSensitiveInfo "koko polku kansioon"
Esimerkiksi,
fsutil.exe-tiedosto queryCaseSensitiveInfo "C:\data\Winaero\Linux"
Näet jotain tämän kaltaista:
Lopuksi, poistaaksesi kirjainkoon erottelutilan käytöstä kansioissa, suorita seuraava komento järjestelmänvalvojana avatussa komentokehotteessa:
fsutil.exe-tiedosto setCaseSensitiveInfo "C:\data\Winaero\Linux" pois käytöstä
Käytä oikeaa kansiopolkua ja olet valmis.
Huomautus: Ei-tyhjien kansioiden CaseSensitiveInfo-attribuutin poistamista käytöstä ei tueta. Sinun on poistettava kaikki tiedostot kansiosta ennen sen poistamista käytöstä.
Se siitä.