Questa domanda mi è venuta in mente l'altro giorno mentre stavo lavorando a un progetto di sviluppo che si basa su un framework supponente per quanto riguarda i nomi dei file. Il framework (qui non pertinente) voleva vedere i nomi dei file in maiuscolo. Questo mi ha fatto pensare.
Su un file system senza distinzione tra maiuscole e minuscole, dire extFAT o HFS + (in particolare senza distinzione tra maiuscole e minuscole) in che modo il file system fornisce l'accesso allo stesso file con entrambe le versioni maiuscole e minuscole del nome file.
Per esempio:
$ cd ~/Documents
$ pwd
/home/derp/Documents
$ cd ../documents
$ pwd
/home/derp/documents
$ cd ../docuMents
$ pwd
/home/derp/docuMents
$ cd ../DOCUMENTS
$ pwd
/home/derp/DOCUMENTS
$ cd ../documentS
$ pwd
/home/derp/documentS
Tutti questi comandi si risolveranno nella stessa directory. Questo comportamento, in particolare l'output di pwd
una funzione di bash
questo caso, mi sta solo mostrando ciò che pensa di voler vedere?
Un altro esempio:
$ ls ~/Documents
Derp.txt another.txt whatThe.WORLD
Il file system qui riporta il caso del nome file originale come creato dall'utente o dal programma.
A che punto dello stack del filesystem viene conservato il nome file leggibile dall'uomo quando è stato creato (es. Maiuscolo e minuscolo) in modo che sia possibile accedervi da qualsiasi combinazione dei caratteri ASCII maiuscoli e minuscoli corretti? È solo un trucco regex da qualche parte o c'è qualcos'altro che sta succedendo?
EDIT: Sembra che il comportamento mi incuriosisce è trovato in -preservare caso file system case-insensitive, dopo qualche ricerca ...