macos中修改文件创建时间需用终端命令:一、用touch设访问/修改时间,再用setfile设创建时间;二、用mdutil和xattr改spotlight元数据;三、用exiftool改媒体文件嵌入式元数据;四、用hdiutil创建带指定时间的dmg后提取文件。

如果您需要调整 macOS 系统中某个文件的创建时间(即“Created”时间),系统原生不提供图形界面操作入口,但可通过终端命令实现。以下是几种可行的技术方案:
一、使用 touch 命令配合 SetFile 工具
macOS 自带的 SetFile 工具可直接修改文件的创建时间(Creation Date),需配合 touch 预设修改时间戳。此方法适用于单个文件且要求精确到秒级控制。
1、打开“终端”应用(位于“应用程序 > 实用工具”中)。
2、输入命令 xcode-select --install 并回车,确保开发工具已安装(若提示已存在则跳过)。
3、执行 touch -t 202301010000.00 /path/to/file,将文件的修改时间与访问时间设为 2023 年 1 月 1 日 00:00:00。
4、执行 SetFile -d "01/01/2023 00:00:00" /path/to/file,将创建时间设为指定日期时间(格式必须为 MM/DD/YYYY HH:MM:SS)。
二、使用 mdutil 和自定义元数据覆盖
通过重建 Spotlight 索引并注入自定义元数据,可间接影响部分应用对创建时间的读取行为。该方法不修改底层 HFS+/APFS 文件系统时间戳,但能影响 Finder 显示及某些第三方工具解析结果。
1、在终端中运行 mdutil -i off /path/to/folder,临时禁用目标文件夹的 Spotlight 索引。
2、使用 xattr -wx com.apple.metadata:kMDItemContentCreationDate '6278756800000000' /path/to/file 写入自定义创建时间值(十六进制时间戳,需转换为 macOS 自 2001-01-01 起的微秒数)。
3、执行 mdutil -i on /path/to/folder 重新启用索引并强制刷新元数据缓存。
三、使用第三方工具 exiftool 批量处理
exiftool 支持对多种文件类型(如图片、PDF、视频等)的嵌入式元数据中的创建时间字段进行写入,适用于媒体类文件的时间属性修正。
1、通过 Homebrew 安装:运行 brew install exiftool。
2、对 JPEG 文件设置创建时间:运行 exiftool "-CreateDate=2023:01:01 00:00:00" /path/to/image.jpg。
3、同步更新文件系统时间戳:添加 -api QuickTimeUTC 参数以适配 QuickTime 时间格式,并追加 -overwrite_original 避免生成副本。
四、挂载只读镜像后重新提取文件
利用 macOS 的磁盘映像机制,在创建 DMG 时指定时间戳参数,再从中解压文件,使新文件继承镜像创建时刻作为其创建时间。此方法绕过直接修改限制,适用于需批量生成统一创建时间的场景。
1、准备待处理文件,放入空文件夹 /tmp/source_folder。
2、执行命令:hdiutil makehybrid -o /tmp/output.dmg -creationdate "2023-01-01T00:00:00" /tmp/source_folder。
3、挂载该 DMG:hdiutil attach /tmp/output.dmg,然后从挂载点复制文件至目标位置。










