Qual é o comportamento esperado padrão quando o Windows encontra dois arquivos com o mesmo nome, mas uma capitalização diferente em uma partição NTFS?

16

É fácil escrever dois arquivos em uma partição NTFS do Linux e ter ambos os arquivos contendo as mesmas letras, mas com maiúsculas e minúsculas, por exemplo. some_file.txt e Some_File.txt. O Linux os distingue.

Como o Windows lida com isso?

    
por trusktr 24.05.2014 / 21:04

2 respostas

20

As personalidades do MS-DOS, WOW e Win32 retornarão o primeiro arquivo correspondente. Para alguns aplicativos e APIs, o case insensibilidade é imposto (por exemplo, o MS-DOS simplesmente não consegue lidar com isso). A personalidade POSIX irá diferenciar e é sensível a maiúsculas e minúsculas por padrão (se você tiver as ferramentas UNIX instaladas, por exemplo). O prompt de comando nativo do Windows NT exibirá os dois, mas, dependendo das configurações (ObCaseInsensitive) e das APIs que as ferramentas usam, acessará apenas o primeiro que encontrar.

Consulte o artigo da Microsoft Technet Os nomes dos arquivos diferenciam maiúsculas e minúsculas em volumes NTFS (KB100625) e também uma discussão detalhada das sutilezas de diferenciação de maiúsculas e minúsculas nos vários subsistemas do NT: Noções básicas sobre maiúsculas e minúsculas no Windows: obcaseinsensitive , FILE_CASE_SENSITIVE_SEARCH

Em particular, o valor ObCaseInsensitive controla a sensibilidade a maiúsculas e minúsculas de todo o Gerenciador de Objetos NT:

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\ dword:ObCaseInsensitive
  • When set to 0, the object manager runs in case sensitive mode.
  • When set to 1, the object manager runs in case insensitive mode.
  • When unspecified, NT 5.1 (Windows XP) and later editions default to running in case insensitive mode.
  • obcaseinsensitive has no meaning in NT 5.0 (Windows 2000) and prior versions of NT, which always run in case sensitive mode.

O Cygwin deve identificar as configurações de sensibilidade a casos subjacentes / efetivas neste momento.

A questão do SuperUser relacionada Como configurar o nome da pasta diferenciação de maiúsculas e minúsculas no Windows 7? e no artigo da TechNet Configurar a sensibilidade de maiúsculas e minúsculas para nomes de arquivos e pastas tenha mais informações sobre como habilitar maiúsculas e minúsculas para arquivos e pastas no NT, se precisar lidar com essa situação regularmente.

Recursos adicionais sobre ferramentas / acesso a volumes NTFS / NFS sensíveis a maiúsculas e minúsculas:

por 24.05.2014 / 22:01
2

Isso não acontece. Ele considera diferenças de caso, mas, de outra forma, os mesmos nomes são o mesmo arquivo.

Você pode testar isso criando um arquivo em letras minúsculas e, em seguida, criando outro com apenas uma letra no topo e ele irá reclamar.

    
por 24.05.2014 / 21:10