xattr -l
다운로드 폴더의 항목을 실행하면 다음과 같은 필드가 나타납니다.
com.apple.metadata:kMDItemDownloadedDate:
00000000 62 70 6C 69 73 74 30 30 A1 01 33 41 B4 83 4D BF |bplist00..3A..M.|
00000010 4C 4F E3 08 0A 00 00 00 00 00 00 01 01 00 00 00 |LO..............|
00000020 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 |................|
00000030 00 00 00 00 13 |.....|
00000035
이진 plist입니다. HexFiend를 사용하여 해당 바이트가있는 파일을 만들면 (예, 수동으로 입력했습니다. 매거진에서 어셈블러 코드를 내 Apple에 입력하는 것과 같이 과거에서 폭발] [GS), .plist 파일로 저장하면 열었습니다. TextWrangler의 파일에 컴파일되지 않은 다음 xml이 있습니다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<date>2011-11-28T05:03:59Z</date>
</array>
</plist>
즉, 애플은 날짜를 컴파일 된 XML로 저장하는 것처럼 보이지만 일반 텍스트는 작동하는 것으로 보입니다.
즉, 파일의 수정 된 날짜를 문자열 형식으로 얻을 수있는 경우 명령 xattr -w com.apple.metadata:kMDItemDownloadedDate "2012-02-19 16:34:47 +0000" file
을 실행 하여 "다운로드 한 날짜"를 변경할 수 있습니다. 실제 다운로드 한 날짜가 아니라 실제로 정렬 된 필드 인 것처럼 보입니다.
제 (사용되지 않는) 추가 할 때 마지막으로 당신은 오류 없어 kMDItemDateAdded
때문에 내가 배운대로 필드에 이 문서 , xattr
즐겁게 사용 또는 사용하지 않은, 당신이 원하는 메타 데이터 필드 설정합니다.
이것이 답의 핵심입니다. AppleScript를 작성하여 각 파일의 수정 날짜를 가져 kMDItemDownloadedDate
오고 설정되어 있는지 확인하고 설정되어 있지 않은 경우 kMDItemDownloadedDate를 수정 날짜로 설정하지만 답변의 핵심을 게시하고 싶습니다.