Sind Bash-Befehle unter OSX unabhängig von Groß- und Kleinschreibung? Ich gebe "which TR" ein und es wird / usr / bin / TR angezeigt, obwohl es dort keine solche Binärdatei gibt. Dasselbe gilt für andere Binärdateien, wenn diese aktiviert sind. Oder macht Terminal.app diese Übersetzung? Wie schalte ich das aus?
79
locale
und vollständig ignorierte Groß- und Kleinschreibung / nocaseglobAntworten:
Dies ist eigentlich eine Funktion des Dateisystems Ihrer Festplatte, nicht Bash oder Terminal.app.
HFS + (das Mac-Dateisystem) ist normalerweise so konfiguriert, dass zwischen Groß- und Kleinschreibung nicht unterschieden wird, die Groß- und Kleinschreibung jedoch beibehalten wird . Dies bedeutet , dass das Dateisystem betrachten
foo
undFoO
gleich zu sein, aber wenn Sie eine neue Datei erstellen wird es merken , welche Buchstaben , wo aktiviert und welche nicht.Wenn Sie eine Festplatte mit HFS + formatieren, können Sie auswählen, ob das Dateisystem zwischen Groß- und Kleinschreibung unterscheiden soll oder nicht. Wenn Sie sich für die Formatierung mit UFS (Unix FileSystem) entschieden haben, wird die Groß- und Kleinschreibung immer beachtet (AFAIK).
Führen Sie Folgendes aus, um zu überprüfen, ob bei einem Datenträger zwischen Groß- und Kleinschreibung unterschieden wird:
Zum Beispiel:
Suchen Sie nach der
Name:
Linie. Wenn es so etwas liestMac OS Extended (Case-sensitive, Journaled)
, wird zwischen Groß- und Kleinschreibung unterschieden. Wenn nurMac OS Extended
(ohneCase-sensitive
) gelesen wird , wird nur die Groß- / Kleinschreibung beibehalten , nicht jedoch die Groß- / Kleinschreibung .quelle
i
entsprechenİ
, während die punktlosen GroßbuchstabenI
den punktlosen Kleinbuchstaben entsprechenı
, aber JEDE Lösung wird schlecht sein. Und was ist mit dem Deutschenß
, der oft mit 2S
s groß geschrieben wird ? Und Akzente, die bei der Großschreibung oft weggelassen werden? Und ... die Groß- und Kleinschreibung beseitigt all diese Kopfschmerzen.Sehen Sie sich Ihr Dateisystem an, da bei HFS sowohl zwischen Groß- und Kleinschreibung unterschieden wird. Standardmäßig wird die Groß- und Kleinschreibung nicht berücksichtigt. In diesem Fall handelt es sich weniger um BASH als um das zugrunde liegende Dateisystem. Sie können dies testen, indem Sie einen freien USB-Stick mit der Option "Groß- / Kleinschreibung beachten" formatieren und Dateien kopieren, um den Test usw. zu wiederholen.
quelle
Ich habe es geschafft, dies mit einer Zeile zu beheben, indem ich http://blog.nickburwell.com/blog/2008/11/mac-os-x-terminal-case-insensitive-auto folgte
quelle
Bash unterscheidet auf jeden Fall zwischen Groß- und Kleinschreibung.
Ich habe nur "whoami" in das Terminal eingegeben und die Feststelltaste war aktiviert.
Ich habe eine ganz andere Antwort von "WHOAMI" bekommen.
Ich kann sehen, dass es einen WHOAMI-Befehl mit 'which' gibt, aber ich kann ihn mit 'ls' nicht finden.
quelle
whoami
Programm selbst. Es ist eigentlich das gleiche Programm wieid
, aber es prüft, unter welchem Namen es ausgeführt wurde, und verwendet eine andere Ausgabe (äquivalent zuid -un
), wenn es unter dem Namen "whoami" ausgeführt wird. Diese Prüfung unterscheidet zwischen Groß- und Kleinschreibung. Vergleichen Sie die Ausgabe vonid
,WHOAMI
,WhOaMi
,WhoAmI
, etc. Auch, vergleichen Sie die Ausgabe vonls -li /usr/bin/whoami
vsls -li /usr/bin/WHOAMI
und beachten Sie, dass die Inode - Nummer (das erste , was in der Ausgabe aufgeführt) ist das gleiche - sie sind zwei verschiedene Möglichkeiten, die genau die gleiche Datei angeben .