Jak již možná víte, souborový systém Windows NTFS zachází s názvy souborů a složek bez rozlišování velkých a malých písmen. Například pro OS a aplikace jsou MyFile.txt a myfile.txt stejný soubor. V Linuxu se však věci liší. Pro tento operační systém jsou to dva různé soubory. Tento rozdíl v chování může uživatelům WSL způsobit problémy. Abychom je vyřešili, obsahuje Windows 10 možnost povolit režim rozlišování velkých a malých písmen pro složky.
Reklama
Pokud jste použili Subsystém Windows pro Linux , jste si pravděpodobně vědomi toho, že vám umožňuje zacházet se svými souborovými systémy Windows (připojenými pod / mnt / c, / mnt / d atd.) jako s malými a velkými písmeny. To mimo jiné znamená, že můžete vytvářet soubory, jejichž názvy se liší pouze podle velikosti písmen (např. Foo.txt a FOO.TXT).
Použití těchto souborů ve Windows však ve skutečnosti nebylo možné. Vzhledem k tomu, že aplikace systému Windows považují systém souborů za malá a velká písmena, nemohou rozlišovat mezi soubory, jejichž názvy se liší pouze malými a velkými písmeny. Zatímco Průzkumník souborů by zobrazoval oba soubory, otevřel by se pouze jeden bez ohledu na to, na který jste klikli.
Počínaje sestavením Windows Insider 17093 existuje nový způsob zpracování souborů citlivých na velká a malá písmena ve Windows: rozlišování velkých a malých písmen v jednotlivých adresářích. Tato schopnost byla přidána, aby poskytla uživateli lepší interoperabilitu při používání souborů citlivých na velká a malá písmena. Můžete jej také použít s běžnými aplikacemi systému Windows. Počínaje verzí Windows 10 Build 17110 je toto chování výchozí.
Více informací
Rozlišování malých a velkých písmen ve Windows
Rodina operačních systémů Windows NT (včetně Windows 10) vždy měla schopnost provádět operace se systémem souborů citlivými na velká a malá písmena. Aplikace mohou předatFILE_FLAG_POSIX_SEMANTICS
vlajka kCreateFile
API k označení, že chtějí, aby byla cesta považována za velká a malá písmena. Z důvodů kompatibility však existuje globální klíč registru, který přepíše toto chování; když je tento klíč nastaven, všechny operace se soubory nerozlišují velká a malá písmena, i kdyžFILE_FLAG_POSIX_SEMANTICS
příznak je zadán. Od Windows XP je toto výchozí nastavení.
jak otevřít soubor cpgz
Subsystém Windows pro Linux používá jiný mechanismus, který sám tento klíč registru obchází, což nám umožňuje provádět operace se systémem souborů citlivými na velká a malá písmena. To umožňuje aplikacím Linux běžícím ve WSL používat názvy souborů, které se liší pouze případem, stejně jako ve skutečném Linuxu, a to i s touto globální sadou klíčů registru.
Bohužel vám to ponechá soubory, ke kterým aplikace Windows nemají přístup. I když byste mohli změnit klíč globálního registru, stále by to fungovalo pouze pro ty aplikace, které používajíFILE_FLAG_POSIX_SEMANTICS
, a to by změnilo chování všech souborů na všech jednotkách, což nemusí být zamýšleno a může to poškodit některé aplikace.
Citlivost písmen na adresář
K vyřešení tohoto problému společnost Microsoft přidala nový příznak rozlišující velká a malá písmena, který lze použít na adresáře. U adresářů, které mají tento příznak nastaven, se u všech operací se soubory v tomto adresáři rozlišují velká a malá písmena, bez ohledu na to, zdaFILE_FLAG_POSIX_SEMANTICS
bylo uvedeno. To znamená, že pokud máte v adresáři označeném jako malá a velká písmena dva soubory, které se liší pouze velikostí písmen, budou k nim mít přístup všechny aplikace.
Aktivujte režim rozlišování velkých a malých písmen pro složky
Chcete-li povolit nebo zakázat tuto funkci, měli byste použít integrovanou aplikaci fsutil.exe.
Povolení režimu rozlišování velkých a malých písmen pro složky , Udělej následující.
- otevřeno zvýšený příkazový řádek .
- Zadejte následující příkaz:
fsutil.exe soubor setCaseSensitiveInfo 'úplná cesta k vaší složce' povolena
Nahraďte část cesty správnou cestou odpovídající vašemu počítači.
Například,fsutil.exe soubor setCaseSensitiveInfo 'C: data Winaero Linux' povolit
- Jsi hotov.
Nyní můžete vytvořit dva soubory se stejným názvem a pouze s rozlišením malých a velkých písmen. Windows 10 je v této konkrétní složce správně zpracuje.
jak formátovat cd v systému Windows 7
Chcete-li zobrazit stav funkce složky, spusťte příkaz
soubor fsutil.exe queryCaseSensitiveInfo 'úplná cesta k vaší složce'
Například,
dotaz souboru fsutil.exeCaseSensitiveInfo 'C: data Winaero Linux'
Uvidíte něco takového:
zastavit Chrome v automatickém přehrávání videí
Konečně, deaktivovat režim rozlišování velkých a malých písmen pro složky , spusťte další příkaz v příkazovém řádku otevřeném jako správce:
soubor fsutil.exe setCaseSensitiveInfo 'C: data Winaero Linux' deaktivován
Použijte správnou cestu ke složce a jste hotovi.
Poznámka: Zakázání atributu CaseSensitiveInfo pro neprázdné složky není podporováno. Před deaktivací musíte ze složky odebrat všechny soubory.
A je to.