Erstellen Sie eine temporäre Datei mit Großbuchstaben und prüfen Sie, ob die Datei in Kleinbuchstaben vorliegt. Wenn der Test fehlschlägt, wird unter unterschieden
Ich habe die statfs (2) Systemaufruf, um viele Eigenschaften eines Mac OS X-Dateisystems zu erhalten, aber es sagt mir nicht, ob das Dateisystem Groß- und Kleinschreibung unterscheidet oder nicht.
Ich brauche diese Informationen, da die Anwendung, die ich entwickle, viele Dateien umherschleppen wird und ich einen möglichen Datenverlust erkennen möchte, weil Dateien von einem case- sensitiven Dateisystem in einen Fall verschoben werden. unempfindliches Dateisystem.
Kann jemand vorschlagen, dies zu erkennen?
Ich habe mich umgeschaut und keine API dafür gefunden. Es gibt zwei Möglichkeiten, die ich mir vorstellen kann:
Da %code% das identifizieren kann, könnte es sein, dass diese Information über eine API oder einen Systemaufruf verfügbar ist.
Bearbeiten: Es stellt sich heraus, dass %code% über eine Reihe von Methoden verfügt, die mit Dateisystemeigenschaften arbeiten. Insbesondere zeigt %code% mit dem Schlüssel %code% an, ob ein bestimmtes Dateisystem (dargestellt als %code% instance) Groß- und Kleinschreibung unterstützt.
Siehe den folgenden Code für ein Anwendungsbeispiel.
%Vor%Ausgabebeispiel:
%Vor%Wenn Sie %code% bereits verwenden, können Sie einfach %code% mit dem Selektor %code% (result %code% = case-insensitiv, %code% = Groß- und Kleinschreibung beachten. Beachten Sie, dass die man-Seite veraltet ist, aber die %code% und %code% werden unterstützt. Wenn ein Dateisystem %code% selector nicht unterstützt, wird die Groß- / Kleinschreibung beachtet.
Suchen Sie hier nach Code, um den HFS-Untertyp eines Geräts zu finden:
Die Routine is_hfs gibt den hfs-Subtyp zurück. Wenn der Subtyp kHFSXSubType oder kHFSXJSubType ist, handelt es sich um ein HFSX-Gerät (case sensitive).