24

Я лично думал, что NTFS нечувствительна к регистру, так как вы можете ввести cmd, CMD, cMd или даже CmD и все равно получить командную строку. Однако почему во время CHKDSK x: /f /r иногда он исправляет заглавные буквы в некоторых файлах? Если это не заботит дело, это не должно иметь значения, и CHKDSK не должен проверять, действительно ли это CMD или cmd. Я прав? Где это на самом деле имеет значение в файловой системе?

3 ответа3

34

Чувствительность к регистру файловой системы - это отдельная проблема операционной системы. Последние выпуски Windows основаны на ядре NT, которое наследует множество свойств не-NT Windows 95 и даже MS-DOS. Наряду с ядром NT файловая система NTFS была разработана с учетом регистра символов - для обеспечения совместимости с POSIX.

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

7

Это на самом деле не NTFS, о которой вы спрашиваете.

NTFS - это файловая система. Ваш вопрос действительно о чувствительности к регистру командной оболочки Windows. Они совершенно разные. Windows Explorer - это графическая командная оболочка. Вводя cmd (например, в Start | Run), вы указываете командной оболочке Windows выполнить команду cmd (которая сама по себе является другой командной оболочкой, но основанной на командной строке, а не графической).

Точно так же CHKDSK не проверяет, используете ли вы CMD или cmd. Все, что CHKDSK знает, это параметры, которые вы передаете ему, в данном случае это x:, /f и /r.

Что касается CHKDSK "фиксация капитализации", я не совсем уверен, что вы там имеете в виду.

5

Я подозреваю, что утверждение автора вопроса о том, что chkdsk.exe "исправляет использование заглавных букв в некоторых файлах", фактически вызвано сообщением от CHKDSK, которое появляется при некоторых обстоятельствах:

исправление ошибок в верхнем регистре

В основном это происходит из-за версии chkdsk.exe для Windows XP, работающей на томе NTFS, отформатированном в более поздней версии Windows, как описано в сообщении об ошибке при запуске Chkdsk.exe на основе Windows XP или Windows Компьютер под управлением Server 2003: «Исправление ошибок в файле верхнего регистра». В результате, это действительно не ошибка и не имеет ничего общего с чувствительностью к регистру.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .