Como ativar nomes de arquivos e pastas que diferenciam maiúsculas de minúsculas no Windows 10

O Windows 10 agora oferece um sistema de arquivos opcional com distinção entre maiúsculas e minúsculas, assim como o Linux e outros sistemas operacionais semelhantes ao UNIX. Todos os processos do Windows lidarão com arquivos e pastas com distinção entre maiúsculas e minúsculas se você habilitar este recurso. Em outras palavras, eles verão “arquivo” e “Arquivo” como dois arquivos separados.

Como isso funciona

Este é um recurso do sistema de arquivos NTFS que você pode habilitar por diretório. Ele não se aplica a todo o sistema de arquivos, portanto, você pode apenas habilitar a diferenciação de maiúsculas e minúsculas para pastas específicas usadas para fins de desenvolvimento.

A diferenciação de maiúsculas e minúsculas foi adicionada na atualização de abril de 2018 do Windows 10 . Antes disso, era possível montar pastas do Windows com distinção entre maiúsculas e minúsculas no ambiente Bash no Windows , também conhecido como Subsistema Windows para Linux. Isso funcionou bem no ambiente Linux, mas confundiu os aplicativos normais do Windows. Este agora é um recurso de nível de sistema de arquivos, o que significa que todos os aplicativos do Windows também verão um sistema de arquivos com distinção entre maiúsculas e minúsculas.

Esse recurso é habilitado por meio do fsutil.execomando, que deve ser executado na linha de comando. Você pode fazer isso em um prompt de comando ou janela do PowerShell. Com as configurações padrão, as pastas que você cria no ambiente Linux também são configuradas automaticamente para fazer distinção entre maiúsculas e minúsculas.

Recomendado:  Por que minha impressora está offline? (e como obtê-lo on-line)

Como definir um diretório como sensível a maiúsculas e minúsculas

Para começar, clique com o botão direito do mouse no botão Iniciar e selecione o comando “PowerShell (Administrador)”. Se preferir usar o Prompt de Comando, você pode pesquisar “Prompt de Comando” no menu Iniciar, clicar com o botão direito do mouse e selecionar o comando “Executar como Administrador”. O comando funciona da mesma forma, não importa o ambiente de linha de comando que você escolher.

Você pode não precisar de acesso de administrador para executar este comando, dependendo de suas permissões. Tecnicamente, você precisa da permissão “escrever atributos” para o diretório que deseja modificar. Na maioria dos casos, isso significa que você precisará de permissões de administrador se quiser editar uma pasta em algum lugar fora de sua pasta de usuário – como c: \ projeto – e não se quiser modificar uma pasta em algum lugar dentro de sua pasta de usuário – como como em c: \ users \ NAME \ project.

Antes de continuar, certifique-se de que nenhum software Linux em execução esteja fazendo referência ao diretório que você está prestes a modificar. Você não deve alterar o sinalizador de distinção entre maiúsculas e minúsculas em uma pasta enquanto o software Linux a estiver acessando. Se qualquer processo do Linux em execução tiver o diretório ou qualquer coisa dentro do diretório aberto, mesmo como seu diretório de trabalho atual, os aplicativos Linux não reconhecerão a mudança e podem ocorrer problemas.

Para diferenciar maiúsculas de minúsculas em uma pasta, digite o seguinte comando, substituindo “C: \ pasta” pelo caminho para a pasta:

arquivo fsutil.exe setCaseSensitiveInfo C: \ pasta habilitada

Se o caminho da pasta contiver um espaço, coloque todo o caminho entre aspas, assim:

arquivo fsutil.exe setCaseSensitiveInfo "C: \ minha pasta" habilitar

Isso não afeta as subpastas

O sinalizador de distinção entre maiúsculas e minúsculas afeta apenas a pasta específica à qual você o aplica. Ele não é herdado automaticamente pelas subpastas dessa pasta.

Recomendado:  O que é engenharia social e como você pode evitá-la?

Em outras palavras, se você tiver uma pasta chamada C: \ folder e ela contiver as subpastas C: \ folder \ test e C: \ folder \ stuff dentro dela, simplesmente diferenciar maiúsculas de minúsculas na pasta C: \ também não tornaria o As subpastas “test” e “stuff” dentro dele diferenciam maiúsculas de minúsculas. Você precisaria executar o fsutilcomando apropriado separadamente para tornar todas as três pastas sensíveis a maiúsculas e minúsculas.

Ferramentas Linux criam pastas que diferenciam maiúsculas de minúsculas por padrão

As ferramentas do Linux que você executa dentro do subsistema Windows para Linux (shell Bash) agora criam pastas com o sinalizador que diferencia maiúsculas de minúsculas definido. Portanto, quer você use o mkdircomando para criar um diretório dentro de um shell Bash ou uma ferramenta de desenvolvimento faça isso por você, o diretório criado é automaticamente definido como diferencia maiúsculas de minúsculas – mesmo se você criá-lo em seu sistema de arquivos Windows montado.

Tecnicamente, isso ocorre porque o sistema de arquivos DrvFs para o ambiente Linux usa o case=dirsinalizador por padrão . A case=diropção configura o ambiente Linux para respeitar o sinalizador NTFS de cada diretório e para definir automaticamente o sinalizador de distinção entre maiúsculas e minúsculas nos diretórios criados a partir do ambiente Linux. Você pode alterar esta opção em seu arquivo wsl.conf , se desejar.

Contanto que você crie pastas no ambiente Linux, elas são criadas com as configurações adequadas de distinção entre maiúsculas e minúsculas e você nunca precisa tocar no comando fsutil.exe.

Como verificar se um diretório diferencia maiúsculas de minúsculas

Para verificar se um diretório atualmente diferencia maiúsculas de minúsculas, execute o seguinte comando, substituindo “C: \ pasta” pelo caminho para a pasta.

arquivo fsutil.exe queryCaseSensitiveInfo C: \ folder

Se a diferenciação de maiúsculas e minúsculas estiver habilitada para um diretório, você verá que o “Atributo de diferenciação de maiúsculas e minúsculas no diretório [caminho] está habilitado.” Se o diretório estiver usando a não diferenciação de maiúsculas e minúsculas padrão do Windows, você verá que o “Atributo que diferencia maiúsculas de minúsculas no diretório [caminho] está desativado”.

Recomendado:  Como funciona a ativação do Windows?

Como fazer um diretório insensível a maiúsculas e minúsculas

Para desfazer sua alteração e tornar um diretório insensível a maiúsculas e minúsculas novamente (como Bill Gates pretendia), execute o seguinte comando, substituindo “C: \ pasta” pelo caminho para a pasta.

arquivo fsutil.exe setCaseSensitiveInfo C: \ pasta desativada

Se você tentar desativar a diferenciação de maiúsculas e minúsculas para uma pasta que contém arquivos com nomes que entrariam em conflito, você verá uma mensagem “Erro: O diretório não está vazio”. Você precisará remover ou renomear os arquivos conflitantes antes de continuar.