Come forse già saprai, il file system di Windows, NTFS, tratta i nomi di file e cartelle come senza distinzione tra maiuscole e minuscole. Ad esempio, per il sistema operativo e le app, MyFile.txt e myfile.txt sono lo stesso file. Tuttavia, le cose sono diverse in Linux. Per questo sistema operativo, questi sono due file diversi. Questa differenza di comportamento può creare problemi per gli utenti WSL. Per risolverli, Windows 10 include la possibilità di abilitare la modalità case sensitive per le cartelle.
Pubblicità
Se hai utilizzato il file Sottosistema Windows per Linux , probabilmente sei consapevole del fatto che ti consente di trattare i tuoi file system Windows (montati in / mnt / c, / mnt / d, ecc.) come case sensitive. Ciò significa, tra le altre cose, che puoi creare file i cui nomi differiscono solo in base al caso (ad esempio foo.txt e FOO.TXT).
Tuttavia, l'utilizzo di quei file in Windows non era realmente possibile. Poiché le applicazioni Windows trattano il file system come insensibili al maiuscolo / minuscolo, non sono in grado di distinguere tra file i cui nomi differiscono solo per maiuscolo / minuscolo. Mentre Esplora file mostrava entrambi i file, solo uno sarebbe stato aperto indipendentemente da quello su cui hai fatto clic.
A partire dalla build 17093 di Windows insider, esiste un nuovo modo per gestire i file con distinzione tra maiuscole e minuscole in Windows: distinzione tra maiuscole e minuscole per directory. Questa capacità è stata aggiunta per fornire all'utente una migliore interoperabilità quando si utilizzano file con distinzione tra maiuscole e minuscole. Inoltre, puoi usarlo con le normali applicazioni Windows. A partire da Windows 10 Build 17110, questo comportamento è l'impostazione predefinita.
Più dettagli
Distinzione tra maiuscole e minuscole in Windows
La famiglia di sistemi operativi Windows NT (incluso Windows 10) ha sempre avuto la capacità di eseguire operazioni di file system con distinzione tra maiuscole e minuscole. Le applicazioni possono superare l'estensioneFILE_FLAG_POSIX_SEMANTICS
bandiera alCreateFile
API per indicare che desiderano che il percorso venga trattato come case sensitive. Tuttavia, per motivi di compatibilità, esiste una chiave del Registro di sistema globale che sostituisce questo comportamento; quando questa chiave è impostata, tutte le operazioni sui file non fanno distinzione tra maiuscole e minuscole, anche quando l'estensioneFILE_FLAG_POSIX_SEMANTICS
flag è specificato. Da Windows XP, questa è stata l'impostazione predefinita.
come vedere chi ha visualizzato il tuo documento google
Il sottosistema Windows per Linux utilizza un altro meccanismo, che a sua volta ignora la chiave di registro, consentendoci di eseguire operazioni di file system con distinzione tra maiuscole e minuscole. Questo è ciò che consente alle applicazioni Linux in esecuzione in WSL di utilizzare nomi di file che differiscono solo in base al caso, proprio come possono fare su Linux reale, anche con quella chiave di registro globale impostata.
Sfortunatamente, questo ti lascia con file a cui non è possibile accedere dalle applicazioni Windows. Sebbene sia possibile modificare la chiave di registro globale, funzionerebbe comunque solo per quelle applicazioni che utilizzanoFILE_FLAG_POSIX_SEMANTICS
, e questo cambierebbe il comportamento di tutti i file su tutte le unità, il che potrebbe non essere previsto e potrebbe interrompere alcune applicazioni.
Distinzione tra maiuscole e minuscole per directory
Per risolvere questo problema, Microsoft ha aggiunto un nuovo flag di distinzione tra maiuscole e minuscole che può essere applicato alle directory. Per le directory che hanno questo flag impostato, tutte le operazioni sui file in quella directory fanno distinzione tra maiuscole e minuscole, indipendentemente dal fatto cheFILE_FLAG_POSIX_SEMANTICS
è stato specificato. Ciò significa che se si hanno due file che differiscono solo in base al caso in una directory contrassegnata come case sensitive, tutte le applicazioni potranno accedervi.
Abilita la modalità case sensitive per le cartelle
Per abilitare o disabilitare questa funzione, è necessario utilizzare l'app fsutil.exe integrata.
Per abilitare la modalità case sensitive per le cartelle , Fare quanto segue.
- Aperto un prompt dei comandi con privilegi elevati .
- Digita il seguente comando:
fsutil.exe file setCaseSensitiveInfo 'percorso completo della cartella' abilita
Sostituisci la parte del percorso con il percorso corretto corrispondente al tuo PC.
Per esempio,File fsutil.exe setCaseSensitiveInfo 'C: data Winaero Linux' abilitato
- Hai fatto.
Ora puoi creare due file con lo stesso nome e con solo una differenza tra maiuscole e minuscole. Windows 10 li elaborerà correttamente in questa particolare cartella.
puoi leggere i messaggi di testo online verizon?
Per visualizzare lo stato della funzionalità per una cartella, eseguire il comando
File fsutil.exe queryCaseSensitiveInfo 'percorso completo della cartella'
Per esempio,
File fsutil.exe queryCaseSensitiveInfo 'C: data Winaero Linux'
Vedrai qualcosa del genere:
come mettere le mod in minecraft
Finalmente, per disabilitare la modalità case sensitive per le cartelle , esegui il comando successivo nel prompt dei comandi aperto come amministratore:
File fsutil.exe setCaseSensitiveInfo 'C: data Winaero Linux' disabilitato
Usa il percorso della cartella corretto e il gioco è fatto.
Nota: La disabilitazione dell'attributo CaseSensitiveInfo per cartelle non vuote non è supportata. È necessario rimuovere tutti i file dalla cartella prima di disabilitarla.
Questo è tutto.