用 cp -p 和 cp -a 复制并保留元数据

普通 cp 会给副本全新时间戳并套用当前用户的权限;-p 和 -a 正是那个容易被忘记、能让副本忠实还原原件的标志。

macOS元数据时间戳cp 复制低风险
运行 `cp -p file.txt dest/` 保留时间戳和权限,或运行 `cp -a folder dest/` 进行同时递归并保留所有者的归档式复制。

01命令

命令
$ cp -p report.txt ~/Archive/report.txt
cp -a ~/Projects ~/Backup/Projects

02作用说明

-p 保留权限模式、所有者(在有权限时)以及访问和修改时间;-a 等价于 -pR 加上更高的还原度,是做备份的正确选择。不加这些标志时,副本的 mtime 会变成复制时刻,这会悄悄破坏依赖时间戳的增量备份工具和基于 make 的构建。

03风险

风险低风险
!注意: 非 root 用户对不属于自己的文件保留所有者会静默失败;请以 root 运行,否则恢复备份时所有者会改变。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

  • cp — copy files (macOS)
    SS64 · technical · 2026-09-17
    依据: Documents -p (preserve mode, ownership, timestamps) and -a (archive mode including recursion).

最后验证: 2026-09-17 · 分类: 文件与文件夹

06相关方案