Windows Tips & News

Включение режима с учетом регистра для папок в Windows 10

click fraud protection
РЕКОМЕНДУЕМЫЕ: Щелкните здесь, чтобы исправить проблемы с Windows и оптимизировать производительность системы

Как вы, возможно, уже знаете, файловая система Windows NTFS обрабатывает имена файлов и папок без учета регистра. Например, для ОС и приложений MyFile.txt и myfile.txt - это один и тот же файл. Однако в Linux все иначе. Для этой ОС это два разных файла. Это различие в поведении может создать проблемы для пользователей WSL. Для их решения в Windows 10 предусмотрена возможность включения режима с учетом регистра для папок.

Рекламное объявление

Если вы использовали Подсистема Windows для Linux, вы, вероятно, знаете, что он позволяет обрабатывать файловые системы Windows (смонтированные в / mnt / c, / mnt / d и т. д.) как чувствительные к регистру. Это означает, среди прочего, что вы можете создавать файлы, имена которых отличаются только регистром (например, foo.txt и FOO.TXT).

Однако использовать эти файлы в Windows было невозможно. Поскольку приложения Windows обрабатывают файловую систему как нечувствительную к регистру, они не могут различать файлы, имена которых отличаются только регистром. Хотя проводник будет отображать оба файла, только один будет открыт независимо от того, на каком из них вы щелкнули.

Начиная с Windows Insider build 17093, появился новый способ обработки файлов с учетом регистра в Windows: чувствительность к регистру для каждого каталога. Эта возможность была добавлена, чтобы дать пользователю лучшую совместимость при использовании файлов с учетом регистра. Также вы можете использовать его с обычными приложениями Windows. Начиная с Windows 10 Build 17110, это поведение используется по умолчанию.

СОДЕРЖАНИЕСпрятать
Подробнее
Чувствительность к регистру в Windows
Чувствительность к регистру для каждого каталога
Включить режим с учетом регистра для папок

Подробнее

Чувствительность к регистру в Windows

Семейство операционных систем Windows NT (включая Windows 10) всегда позволяло выполнять операции файловой системы с учетом регистра. Заявки могут пройти FILE_FLAG_POSIX_SEMANTICS флаг к CreateFile API, чтобы указать, что они хотят, чтобы путь обрабатывался с учетом регистра. Однако по соображениям совместимости существует глобальный раздел реестра, который отменяет это поведение; когда этот ключ установлен, все файловые операции нечувствительны к регистру, даже если FILE_FLAG_POSIX_SEMANTICS указан флаг. Начиная с Windows XP, это значение по умолчанию.

Подсистема Windows для Linux использует другой механизм, который сам обходит этот раздел реестра, что позволяет нам выполнять операции файловой системы с учетом регистра. Это то, что позволяет приложениям Linux, работающим в WSL, использовать имена файлов, которые различаются только регистром, так же, как они могут в реальном Linux, даже с этим глобальным набором ключей реестра.

К сожалению, в результате остаются файлы, недоступные для приложений Windows. Хотя вы можете изменить глобальный раздел реестра, это все равно будет работать только для тех приложений, которые используют FILE_FLAG_POSIX_SEMANTICS, и это изменит поведение всех файлов на всех дисках, что может быть не предназначено и может нарушить работу некоторых приложений.

Чувствительность к регистру для каждого каталога

Чтобы решить эту проблему, Microsoft добавила новый чувствительный к регистру флаг, который можно применять к каталогам. Для каталогов, для которых установлен этот флаг, все операции с файлами в этом каталоге чувствительны к регистру, независимо от того, FILE_FLAG_POSIX_SEMANTICS было указано. Это означает, что если у вас есть два файла, которые отличаются только регистром в каталоге, отмеченном как чувствительный к регистру, все приложения смогут получить к ним доступ.

Включить режим с учетом регистра для папок

Чтобы включить или отключить эту функцию, вы должны использовать встроенное приложение fsutil.exe.

Включение режима с учетом регистра для папок, сделайте следующее.

  1. Открытым командная строка с повышенными привилегиями.
  2. Введите следующую команду:
    fsutil.exe файл setCaseSensitiveInfo "полный путь к вашей папке" включить

    Замените часть пути на правильный путь, соответствующий вашему компьютеру.
    Например,

    Файл fsutil.exe setCaseSensitiveInfo "C: \ data \ Winaero \ Linux" включить
    Включить режим с учетом регистра для папок в Windows 10
  3. Вы сделали.

Теперь вы можете создать два файла с одинаковым именем и только с разницей в регистре. Windows 10 правильно обработает их в этой конкретной папке.Режим с учетом регистра Windows 10

Чтобы увидеть статус функции для папки, выполните команду

fsutil.exe file queryCaseSensitiveInfo "полный путь к вашей папке"

Например,

fsutil.exe файл queryCaseSensitiveInfo "C: \ data \ Winaero \ Linux"

Вы увидите что-то вроде этого:
Режим запроса с учетом регистра Windows 10

Наконец-то, для отключения режима чувствительности к регистру для папок, выполните следующую команду в командной строке, открытой от имени администратора:

Файл fsutil.exe setCaseSensitiveInfo "C: \ data \ Winaero \ Linux" отключить

Используйте правильный путь к папке, и все готово.
Примечание: Отключение атрибута CaseSensitiveInfo для непустых папок не поддерживается. Перед отключением папки необходимо удалить все файлы.

Вот и все.

РЕКОМЕНДУЕМЫЕ: Щелкните здесь, чтобы исправить проблемы с Windows и оптимизировать производительность системы

Скачать Скачать Akai GX-77 Black Skin для AIMP3

Этот веб-сайт использует файлы cookie, чтобы улучшить вашу работу во время навигации по веб-сайту...

Читать далее

Project Spartan: адресная строка внизу для мобильных телефонов

Project Spartan: адресная строка внизу для мобильных телефонов

Project Spartan - это кодовое имя нового браузера, созданного для замены Internet Explorer, начин...

Читать далее

Windows 10, сборка 18317 (быстрое кольцо)

Windows 10, сборка 18317 (быстрое кольцо)

Microsoft выпускает новую сборку из ветки разработки (следующая версия Windows 10, в настоящее вр...

Читать далее