Comment activer les noms de fichiers et de dossiers sensibles à la casse sous Windows 10
Windows 10 offre désormais un système de fichiers optionnel sensible à la casse, à l'instar de Linux et d'autres systèmes d'exploitation de type UNIX. Tous les processus Windows géreront correctement les fichiers et les dossiers sensibles à la casse si vous activez cette fonctionnalité. En d'autres termes, ils verront «fichier» et «fichier» comme deux fichiers distincts.
Comment ça marche
Il s'agit d'une fonctionnalité du système de fichiers NTFS que vous pouvez activer par répertoire. Cela ne s'applique pas à l'ensemble de votre système de fichiers. Vous pouvez donc activer la sensibilité à la casse pour des dossiers spécifiques que vous utilisez à des fins de développement..
La sensibilité à la casse a été ajoutée à la mise à jour d'avril 2018 de Windows 10. Auparavant, il était possible de monter des dossiers Windows en respectant la casse dans l'environnement Bash sous Windows, également appelé sous-système Windows pour Linux. Cela fonctionnait bien dans l'environnement Linux, mais cela confondait les applications Windows normales. Il s’agit désormais d’une fonctionnalité au niveau du système de fichiers, ce qui signifie que toutes les applications Windows verront également un système de fichiers sensible à la casse dans ce dossier..
Cette fonctionnalité est activée via le fsutil.exe
commande, que vous devez exécuter à partir de la ligne de commande. Vous pouvez le faire depuis une fenêtre d'invite de commande ou PowerShell. Avec les paramètres par défaut, les dossiers que vous créez dans l’environnement Linux sont automatiquement configurés pour être sensibles à la casse..
Comment définir un répertoire comme sensible à la casse
Pour commencer, cliquez avec le bouton droit de la souris sur le bouton Démarrer, puis sélectionnez la commande «PowerShell (Administrateur)». Si vous préférez utiliser l'invite de commande, vous pouvez rechercher «Invite de commande» dans le menu Démarrer, cliquer dessus avec le bouton droit de la souris, puis sélectionner la commande «Exécuter en tant qu'administrateur». La commande fonctionne de la même manière, quel que soit l’environnement de ligne de commande que vous choisissez..
Vous n’avez peut-être pas besoin d’un accès administrateur pour exécuter cette commande, en fonction de vos autorisations. Techniquement, vous avez besoin de l'autorisation «write attributs» pour le répertoire que vous souhaitez modifier. Dans la plupart des cas, cela signifie que vous aurez besoin d'autorisations d'administrateur si vous souhaitez modifier un dossier en dehors de votre dossier utilisateur, tel que c: \ project, et non si vous souhaitez modifier un dossier quelque part dans votre dossier d'utilisateur, tel que comme à c: \ utilisateurs \PRÉNOM\projet.
Avant de continuer, assurez-vous qu'aucun logiciel Linux en cours d'exécution ne fait actuellement référence au répertoire que vous êtes sur le point de modifier. Vous ne devez pas modifier l'indicateur de sensibilité à la casse sur un dossier pendant que le logiciel Linux y accède. Si l'un des processus Linux en cours a actuellement le répertoire ou quoi que ce soit à l'intérieur, même si leur répertoire de travail est en cours, les applications Linux ne reconnaîtront pas la modification et des problèmes peuvent survenir.
Pour rendre un dossier sensible à la casse, tapez la commande suivante, en remplaçant «C: \ folder» par le chemin du dossier:
Fichier fsutil.exe setCaseSensitiveInfo C: \ folder enable
Si le chemin du dossier contient un espace, placez-le entre guillemets, comme suit:
Fichier fsutil.exe setCaseSensitiveInfo "C: \ mon dossier" activé
Cela n'affecte pas les sous-dossiers
L'indicateur de sensibilité à la casse n'affecte que le dossier spécifique auquel vous l'appliquez. Il n'est pas automatiquement hérité par les sous-dossiers de ce dossier..
En d’autres termes, si vous avez un dossier nommé C: \ folder et qu’il contient des sous-dossiers C: \ folder \ test et C: \ folder \ stuff, il ne suffit pas de rendre le dossier sensible à la casse C: \ sensible à la casse. "Test" et "farcir" les sous-dossiers à l'intérieur de celui-ci, sensible à la casse. Vous devez exécuter le programme approprié fsutil
commande séparément pour rendre les trois dossiers sensibles à la casse.
Les outils Linux créent des dossiers sensibles à la casse par défaut
Les outils Linux que vous exécutez dans le sous-système Windows pour Linux (shell Bash) créent désormais des dossiers avec l'indicateur sensible à la casse. Alors, que vous utilisiez le mkdir
Pour créer un répertoire dans un shell Bash ou un outil de développement, le répertoire créé est automatiquement défini comme sensible à la casse, même si vous le créez sur votre système de fichiers Windows monté..
Techniquement, cela se produit car le système de fichiers DrvF pour l’environnement Linux utilise le case = dir
drapeau par défaut. le case = dir
Cette option permet à l'environnement Linux de respecter l'indicateur NTFS de chaque répertoire et de définir automatiquement l'indicateur de sensibilité à la casse des répertoires créés à partir de l'environnement Linux. Vous pouvez modifier cette option dans votre fichier wsl.conf, si vous le souhaitez..
Tant que vous créez des dossiers à partir de l'environnement Linux, ils sont créés avec les paramètres de sensibilité à la casse appropriés et vous n'avez jamais besoin de toucher à la commande fsutil.exe..
Comment vérifier si un répertoire est sensible à la casse
Pour vérifier si un répertoire est actuellement sensible à la casse, exécutez la commande suivante, en remplaçant «C: \ folder» par le chemin du dossier..
fichier fsutil.exe queryCaseSensitiveInfo C: \ folder
Si la sensibilité à la casse est activée pour un répertoire, vous verrez que «l'attribut sensible à la casse du répertoire [chemin] est activé». Si le répertoire utilise l'insensibilité à la casse Windows standard, vous verrez que «l'attribut Sensible à la casse sur le répertoire [chemin] est désactivé. ”
Comment rendre un répertoire insensible à la casse
Pour annuler votre modification et rendre un répertoire insensible à la casse une fois encore (comme Bill Gates le voulait), exécutez la commande suivante, en remplaçant «C: \ folder» par le chemin du dossier..
Fichier fsutil.exe setCaseSensitiveInfo C: \ dossier désactivé
Si vous essayez de désactiver la distinction entre majuscules et minuscules pour un dossier contenant des fichiers dont les noms risquent d'entrer en collision, le message «Erreur: le répertoire n'est pas vide» s'affiche. Vous devrez supprimer ou renommer les fichiers en conflit avant de continuer..