Перейти к основному содержанию

Windows — регистрозависимые имена файлов и папок

Windows

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

Я регистронезависимая винда, и это хорошо. Я не буду регистрозависимой, но это не плохо...

В Linux, к примеру, это не так.

Чувствительность к регистру определяет, обрабатываются ли прописные (FOO.txt) и строчные буквы (foo.txt) как уникальные (с учетом регистра) или эквивалентные (без учета регистра) в имени файла или каталога. Стандартное поведение:

  • Файловая система Windows обрабатывает имена файлов и каталогов как без учета регистра. FOO.txt и foo.txt будут рассматриваться как эквивалентные файлы.
  • Файловая система Linux обрабатывает имена файлов и каталогов как чувствительные к регистру. FOO.txt и foo.txt будут рассматриваться как отдельные файлы.

Это создавало некоторые трудности при переносе денных между Windows и Linux. Если скопировать папку проекта из Windows в Linux, то она скопируется без проблем. А если скопировать папку с проектом из Linux в Windows, то не факт что скопируется...

win

Ситуация ещё больше усложнилась с появлением подсистемы Windows для Linux (WSL).

Windows Subsystem for Linux 2

Чтобы избежать подобных конфликтов в Windows 10 с апрельским обновлением 2018 года в файловой системе NTFS появился скрытый атрибут system.wsl_case_sensitive для учета регистра каталога, чтобы он распознал файлы и папки Linux, которые могут отличаться только по регистру. Значение этого атрибута будет равно 0 для каталогов без учета регистра и 1 для каталогов с учетом регистра.

При работе из WSL этот атрибут включается автоматически, при работе в Windows его можно включить с помощью утилиты fsutil.exe с правами администратора. Пример на PowerShell:

fsutil.exe file setCaseSensitiveInfo "C:\CASEit" enable

win

И тогда...

win

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

При создании новых каталогов эти каталоги наследуют чувствительность регистра от родительского каталога.

Ссылки

https://learn.microsoft.com/ru-ru/windows/wsl/case-sensitivity

Теги

 

Похожие материалы

Настройка зеркалирования в Microsoft SQL Server 2014

Зеркалирование или mirroring в MS SQL Server 2014 всё ещё есть. Это очень полезное решение для повышения доступности базы данных. Если ваш сервер упал, посыпались винты, сгорел ЦОД, то возможность быстро переключиться на резервный сервер, не занимаясь восстановлением сервера или БД из бэкапа, экономит кучу времени, денег и нервов. Однако, не следует рассматривать зеркалирование как замену резервному копированию, так как оно не спасает от случайного удаления данных.

Теги

Port-forwarding перенаправление портов в Windows

Начиная с Windows XP в операционной системе Windows имеется встроенная возможность перенаправления сетевых портов — port-forwarding. Более того, любое входящее TCP соединение можно перенаправить не только на другой порт, но и на другой IP адрес.

Теги

Maintenance Plans — резервное копирование и обслуживание баз данных в Microsoft SQL Server 2014

Microsoft SQL Server 2014 позволяет воспользоваться встроенными средствами резервного копирования и обслуживания баз данных. В данном случае план предназначен для обслуживания баз данных исключительно с моделью восстановления FULL. Если вы используете другую модель восстановления, то нужно воспользоваться другим планом, потому что резервное копирование лога транзакций вам может не потребоваться.

Теги