Есть ли функция для получения пути, связанного с индексом?

Я пишу утилиту, которая просматривает дерево каталогов в Mac OS X (10.6 и выше) и пытается обнаружить изменения, произошедшие с момента последней синхронизации каталога с резервным хранилищем.

Когда я первоначально синхронизирую файлы и папки, я получаю номер инода и сохраняю его в записи базы данных для этого файла или папки:

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

Когда я сталкиваюсь с новым файлом или папкой, я сначала выполняю поиск в базе данных, используя номер инода, чтобы найти исходный файл, если таковой имеется.

Но в случае, когда файл перемещен из родительского каталога в подкаталог, и я пытаюсь обнаружить изменения в родительском каталоге, я хотел бы иметь возможность использовать сохраненный номер инода для определения нового пути, чтобы я мог может различить ход и удаление.

Ответы на вопрос(4)

Ваш ответ на вопрос