Les commandes bash sur OSX sont-elles sensibles à la casse? Je tape "quel TR" et il affiche / usr / bin / TR, bien qu’il n’existe aucun fichier binaire de ce type. Même chose pour les autres fichiers binaires, une fois capitalisés. Ou est-ce que Terminal.app est peut-être en train de faire cette traduction? Comment puis-je désactiver cela?
79
locale
et achèvement-ignorer-cas / nocaseglobRéponses:
C'est en fait une fonctionnalité du système de fichiers de votre disque, pas bash ou Terminal.app.
HFS + (le système de fichiers Mac) est généralement configuré pour être insensible à la casse , mais le cas préserver . Cela signifie que le système de fichiers considérera
foo
etFoO
sera identique, mais lorsque vous créez un nouveau fichier, il se souviendra des lettres en majuscules et des autres.Lorsque vous formatez un disque avec HFS +, vous pouvez choisir si le système de fichiers doit être sensible à la casse ou non. Si vous avez choisi de formater avec UFS (Unix FileSystem), il est toujours sensible à la casse, AFAIK.
Pour vérifier si un disque est sensible à la casse, exécutez:
Par exemple:
Cherchez la
Name:
ligne. Si cela lit quelque chose commeMac OS Extended (Case-sensitive, Journaled)
cela, cela signifie qu'il est sensible à la casse. Si elle se contente de lireMac OS Extended
(sans leCase-sensitive
), il ne s'agit que de préserver la casse, mais pas de la distinguer .la source
i
correspondent aux majuscules DOTTEDİ
, tandis que les majuscules sans pointsI
correspondent aux minuscules DOTLESSı
, mais TOUT solution sera mauvaise. Et que dire de l’Allemandß
, souvent capitalisé avec 2S
s? Et des accents qui sont souvent laissés de côté lors de la capitalisation? Et ... La sensibilité à la casse élimine tous ces maux de tête.Examinez votre système de fichiers, car il existe des variantes de HFS sensibles à la casse et insensibles à la casse. La valeur par défaut est insensible à la casse, auquel cas ce n'est pas tant un cas de BASH que le système de fichiers sous-jacent. Vous pouvez tester ceci en formatant une clé USB de rechange avec l'option sensible à la casse et en copiant des fichiers sur pour répéter votre test, etc.
la source
J'ai réussi à résoudre ce problème en une ligne en suivant http://blog.nickburwell.com/blog/2008/11/mac-os-x-terminal-case-insensitive-auto
la source
Bash est définitivement sensible à la casse.
Je viens de taper 'whoami' dans le terminal et le bouton de verrouillage des majuscules était activé.
J'ai eu une réponse complètement différente de `WHOAMI '.
Je peux voir qu'il y a une commande WHOAMI avec 'qui' mais je ne le trouve pas avec 'ls'.
la source
whoami
programme lui-même. C'est en fait le même programme queid
, mais il vérifie le nom sous lequel il a été exécuté et utilise une sortie différente (équivalente àid -un
) s'il est exécuté sous le nom "whoami". Cette vérification est sensible à la casse. Comparez la sortieid
,WHOAMI
,WhOaMi
,WhoAmI
, etc. De plus, comparer la sortie dels -li /usr/bin/whoami
vsls -li /usr/bin/WHOAMI
, et notez que le numéro d'inode (la première chose répertorié dans la sortie) est le même - ils sont deux façons différentes de spécifier exactement le même fichier .