Gibt es eine Funktion zum Abrufen des einer Inode zugeordneten Pfads?

Ich schreibe ein Dienstprogramm, das unter Mac OS X (10.6 und höher) eine Verzeichnisstruktur durchläuft und versucht, Änderungen zu erkennen, die seit der letzten Synchronisierung des Verzeichnisses mit einem Sicherungsspeicherort aufgetreten sind.

Wenn ich die Dateien und Ordner zum ersten Mal synchronisiere, erhalte ich die Inode-Nummer und speichere sie im Datenbankdatensatz für diese Datei oder diesen Ordner:

NSString *oldFilePath = /* ... */;
NSError *error = nil;
NSDictionary *attributes = [[NSFileManager defaultManager] attributesOfItemAtPath:oldFilePath error:&error];
/* set database record for oldFilePath to [attributes fileSystemFileNumber] */

Wenn ich auf eine neue Datei oder einen neuen Ordner stoße, suche ich zuerst anhand der Inode-Nummer nach der Originaldatei, falls vorhanden.

Aber in dem Fall, in dem eine Datei von einem übergeordneten Verzeichnis in ein Unterverzeichnis verschoben wurde und ich versuche, Änderungen am übergeordneten Verzeichnis zu erkennen, möchte ich in der Lage sein, die gespeicherte Inode-Nummer zu verwenden, um den neuen Pfad zu identifizieren, damit ich kann zwischen einem Zug und einem Löschen unterscheiden.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage