Как изменить время BIRTH файла BSD (aka btime)?

В системах BSD есть utime (3), которые (среди прочего) позволяют изменять «время рождения», а также btime (по сравнению с atime, mtime или ctime) файлов. Но на странице man также указано, что utime (3) устаревает с помощью utimes (2).

Я знаю, что могу просмотреть значение btime с помощью stat:

stat -f %B <file>

К сожалению, не кажется, что touch (1) реализует манипуляцию btime. Страницы Man на моем Mac включают в себя запись для utime (3) в библиотеке C, которая может манипулировать btime, но я не вижу ничего, что обеспечивает встроенный интерфейс для обработки btime времени utime (3).

Еще один намек на меня: когда я перетаскиваю фотографии из приложения Mac «Фотографии», он создает новые файлы. (Исходные файлы остаются в их местоположении, где Фотографии сохраняют их организованными, поэтому я уверен, что это новый файл, скопированный с оригинала.) Эти новые файлы имеют даты создания (то, что я вижу в списках искателей или информацию о том, что отображается значение btime для файла), которые совпадают, когда фотографии были сделаны – как правило, несколько лет назад. Настолько ясно, что можно установить btime.

  • Изменить временную метку файла и время показа вместо года с помощью ls
  • Использовать awk для печати и редактирования даты
  • Как я могу увидеть историческое время изменения файла?
  • Объединение файлов журналов с разными форматами временных меток
  • Удалить последний измененный файл
  • Извлеките метки времени и найдите разницу
  • Каково законное использование команды `touch`?
  • Удалять файлы старше X дней с последним измененным файлом
  • One Solution collect form web for “Как изменить время BIRTH файла BSD (aka btime)?”

    Один из способов решить эту проблему (это решает мою проблему) – использовать команду Apple SetFile (1), которая позволяет манипулировать атрибутами файла. Требуется -d arg, чтобы манипулировать датой создания и -m arg для управления временем модификации. Полезно, если я установил время модификации до текущей даты создания, он также установит дату создания.

    $ SetFile -m 05/14/200 foofile.jpg

    Этот Q в стеке Apple / Think Different содержит эту информацию https://apple.stackexchange.com/questions/49154/how-to-change-the-creation-st-birthtime-date-time-of-a-file- в-лев

    Linux и Unix - лучшая ОС в мире.