Stoppen Sie, dass der Finder Doppelpunkte durch Schrägstriche in Dateinamen ersetzt

Wenn ich eine Datei im Finder umbenennen, werden alle Doppelpunkte als Schrägstriche "gerendert".

Wenn ich eine Datei mit dem Namen „0:30“ habe, sie im Finder auswähle und enterdann drücke, Cum den Dateinamen zu kopieren, wird „0/30“ anstelle von „0:30“ in die Zwischenablage kopiert.

Wie kann ich die Schnittstelle zum Umbenennen von Finder-Dateien dazu bringen, Doppelpunkte als Doppelpunkte zu behandeln?

Das Problem ist, dass für HFS+ das auf der Festplatte gespeicherte Verzeichnistrennzeichen tatsächlich : ist und nicht /, daher gibt es Zuordnungsprobleme. Auf APFS habe ich eine Datei in Terminal 0:30 erstellt und Finder (und andere Dateimanager) zeigen sie als 0/30 an, siehe stackoverflow.com/a/13298479/151019
Wie andere möchte ich Sie dringend bitten, keine Doppelpunkte oder Schrägstriche in Dateinamen zu verwenden. Betrachten Sie sie als für die Verwendung durch das Dateisystem reserviert. Andere Betriebssysteme/Dateisysteme haben tendenziell eine viel größere Liste reservierter/verbotener Zeichen.

Antworten (1)

Es ist historisch. In Classic Mac OS :war das Pfadtrennzeichen, nicht /. (Das klassische Mac OS selbst hat das :als Pfadtrennzeichen von SOS für den Apple III kopiert.)

OS X basiert auf Unix (technisch XNU , mit POSIX- Konformität), und daher werden die Unix-Teile, wie z. B. die Befehlszeilen-Tools, /als Verzeichnistrenner verwendet. Die GUI und das eigentliche Dateisystem, das auf Festplatten verwendet wird ( HFS+ ), mussten jedoch mit den klassischen Mac OS-Apps umgehen, die :als Verzeichnistrenner verwendet wurden, so wie sie es immer getan hatten.

Aus Gründen der Abwärtskompatibilität erlaubt die GUI-Schicht (dh der Finder) daher nicht, dass :Zeichen in Dateinamen verwendet werden, und Unix erlaubt keine /. Der Finder ist dafür verantwortlich, das eine auf das andere abzubilden.

Weitere Informationen finden Sie in der Antwort von ldav1s auf Stack Overflow , in der ein USENIX 2000-Papier „The Challenges of Integrating the Unix and MAC OS Environments“ zitiert wird , das einen Teil dieser Geschichte beschreibt.

Es ist also nicht möglich, diese Zuordnung zu vermeiden?
Und ich würde hinzufügen: Verwenden Sie NIEMALS ":" oder "/" in Dateinamen. Es ist zu verwirrend, wenn eine Datei im Finder und im Terminal einen anderen Namen anzeigt. Und verwenden Sie diese auch nicht auf anderen Betriebssystemen, da Sie möglicherweise eines Tages auf diese Datei auf einem Mac zugreifen müssen, und die gleiche Verwirrung auftaucht.
Warum behält 2021 Finder die Abwärtskompatibilität mit diesem veralteten Betriebssystem der 1980er Jahre bei? Das Dateisystem tut dies nicht, der Finder "rendert" nur einen Doppelpunkt als Schrägstrich.
@mivk Ich habe diese Verrücktheit bemerkt, weil ich Zeitstempel in Dateinamen eingefügt habe. Es ist schwer, dafür ein anderes vernünftiges Trennzeichen zu wählen, haben Sie Empfehlungen?
@theonlygusti Das Dateisystem hat bereits Zeitstempel in Metadaten, die Sie verwenden könnten.
@theonlygusti: In solchen Fällen verwende ich Buchstaben. Zum Beispiel würde ich mit dem dateBefehl und seiner Formatierung date +%F_%Hh%M"2021-08-05_17h53" oder date +%F_%Hh%Mm%Ss"2021-08-05_17h54m12s" usw. abrufen, die alle in Dateinamen auf jeder Plattform in Ordnung sind.
@theonlygusti oder verwende einfach ein ISO-Format 1753 - du brauchst keine Trennzeichen und tatsächlich bin ich eher daran gewöhnt, 24-Stunden-Zeiten ohne das Trennzeichen zu sehen
@mvirk sowie ":" oder "/" würde ich vermeiden "\"
@mivk Danke für den guten Vorschlag, ich mag eigentlich auch, wie das aussieht. mmmmmm, in meinem Fall sind es Zeitstempel in Videos, wie zum Beispiel zu einem Freund zu sagen „springe zu 7:04“. Die Verwendung des ISO-Formats dafür wäre sehr ungewöhnlich.