API do Windows para acessar caminhos com distinção entre maiúsculas e minúsculas (Bash-on-Ubuntu-on-Windows)

O Bash-on-Ubuntu-on-Windows suporta caminhos de arquivo que diferenciam maiúsculas de minúsculas. Isso significa que eu posso criar dois arquivos ou diretórios com nomes que diferem apenas em maiúsculas. Eu tenho problemas para acessar esses arquivos, no entanto.

Corrida

bash -c "touch Magic ; mkdir magic ; echo Secret! > magic/secret"

Cria um nome de arquivoMagic, um diretório chamadomagic e um nome de arquivosecret nesse diretório.

bash -c "ls -lR" rendimentos

.:
total 0
drwxrwxrwx 2 root root 0 Aug 23 10:37 magic
-rwxrwxrwx 1 root root 0 Aug 23 10:37 Magic

./magic:
total 0
-rwxrwxrwx 1 root root 8 Aug 23 10:37 secret

(Não sei por que receboroot, como não é o usuário padrão, mas isso não parece relevante para minha pergunta.)

O Windows Explorer mostra:

Agora, enquantobash pode acessar facilmente omagic/secret No diretório, o Windows parece tratar o diretório e o arquivo como um e o mesmo. Então, clicando duas vezes no diretório, recebo o erro "nome do diretório inválido"

O mesmo vale para o usocd, como eu receboThe directory name is invalid. impresso.

Existem APIs que permitem acessar esses caminhos que diferenciam maiúsculas de minúsculas ou criá-los? Parece que as APIs regulares do Windows ignoram completamente as maiúsculas e minúsculas ao acessar arquivos existentes.

questionAnswers(1)

yourAnswerToTheQuestion