BSD의 파일 생성 시간(일명 btime)을 변경하는 방법은 무엇입니까?

BSD의 파일 생성 시간(일명 btime)을 변경하는 방법은 무엇입니까?

BSD 시스템에는 (atime, mtime 또는 ctime과 비교하여) 파일의 "생성 시간", 즉 btime을 변경할 수 있는 utime(3)이 있습니다. 그러나 매뉴얼 페이지에는 utime(3)이 utime(2)에 의해 더 이상 사용되지 않는다고 명시되어 있습니다.

나도 할 수 있다는 걸 알아보다stat의 btime 값을 사용하십시오.

stat -f %B <file>

불행하게도 touch(1)은 btime 작업을 구현하지 않는 것 같습니다. 내 Mac의 매뉴얼 페이지에는 btime에서 작동할 수 있는 C 라이브러리의 utime(3)에 대한 항목이 포함되어 있지만 utime(3)의 btime 작동을 위한 내장 인터페이스를 제공하는 내용은 아무것도 표시되지 않습니다.

마음속에 떠오른 또 다른 팁: Mac 앱의 사진에서 사진을 드래그하면 새 파일이 생성됩니다. (원본 파일은 사진 조직에 남아 있으므로 원본에서 복사된 새 파일이라고 확신합니다.) 이 새 파일에는 생성 날짜가 있습니다(파인더 목록이나 정보 가져오기에서 파일 btime 값이라고 표시된 날짜가 표시됨). )는 사진을 촬영한 시간과 일치합니다(보통 몇 년 전). 분명히 그렇죠가능한btime을 설정합니다.

답변1

이 문제를 해결하는 한 가지 방법은 파일 속성을 조작할 수 있는 Apple의 SetFile(1) 명령을 사용하는 것입니다. -d생성 날짜에 작동하려면 인수 가 필요 하고 -m수정 시간에 작동하려면 인수가 필요합니다. 수정 시간을 현재 생성 날짜 이전으로 설정하면 생성 날짜도 설정된다는 점이 도움이 됩니다.

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

Apple/Think Different 스택의 이 Q에는 다음 정보가 있습니다.https://apple.stackexchange.com/questions/49154/how-to-change-the-creation-st-birthtime-date-time-of-a-file-in-lion

관련 정보