# 彻！底！防！止！Word！文！件！丢！失！或！覆！盖！

> 本文开放前 70% 正文，剩余内容会员可见。

原文：https://utgd.net/article/21025

Jobs 曾笑言：Microsoft（微软）没有品位。

何止没有品位，Microsoft 甚至不懂机器人第一定律：不得伤害用户。

先告诉你一个坏消息：当你因为丢失了 Word 文件而搜到这篇文章时，你已经死了（此时请在脑海中自动播放暴力游戏里常见的“You are dead”提示音）。除了几个缓存文件夹，不要有其他侥幸心理。也不用冒险安装来路可疑的数据恢复软件。我也有过幻想，我甚至已经准备了十万块钱去请灰产帮忙，但他们也帮不上（如果你有办法，请读完本文以确保没有误会我的意思，我会当场把这十万块钱打到你账户上）。

而比起单纯的丢失，文件被覆盖更堪称众疾之王。原因在于，现代 Office 套件——Office 365 和 Microsoft 365——强迫你必须上传文件到 OneDrive，才能享受在别处司空见惯的文件备份和历史版本功能，这种设计比 iCloud 以 App 为本位的文件分类系统更不动脑子：你要么从一开始就把一切都放在 OneDrive 上，要么每打开一个 Word 文档都斟酌一下是否需要上传到云端以求保命。前者不符合任何一个正常人的文件管理习惯，后者把锅狠狠扣在了使用者身上，连锅底都被砸穿，露出被害者血淋淋的脑袋，徒增思维负荷。还记得以前的笑话吗？熬夜写论文的学生不小心踢到了电源线，结果失去了一整天的工作成果。微软打算让你在这个笑话、All in OneDrive 和紧绷神经最终发疯里面三选一。

但本文也无意劝你养成良好的文件备份习惯。至少在这里，人为问题不是解释，它是需要解释的。为什么那么多人用不同的语言在过去十年里于全世界各个或官方或第三方的论坛中寻求帮助，最终无一例外发现自己没有 All in OneDrive——他们分明已经开启了自动备份——而痛失重要数据。若在 Microsoft 系列软件非蠢即坏——后者可能性是百分之九十九点九九九九九九九九九——的文件备份机制面前还说风凉话，无异于被人卖了还帮忙数钱。

逝者如斯。但我至少有办法，可以彻底避免今后再出现 Word 文件丢失的悲剧。

考虑到 Word 恶意排斥其他可能的备份机制，我不得不做一回绑匪，劫持可能造成数据丢失的两个关键操作：⌘Command\-S 和 ⌘Command\-W。⌘Command\-W 意味着关闭文件，不必多言，为何 ⌘Command\-S 也要注意？假设你已经养成了频频按下 ⌘Command\-S 以保存当前进度的好习惯，但 Microsoft 不会保存你的历史记录，因此这个习惯反而很可能会害死人：某次我加班到深夜，按下 ⌘Command\-S 后，可能是文件太大，Word 闪退了；重新打开后，我发现只剩最后修改过的那一页，其他几百页文档都消失了——被最后一次保存覆盖，回天乏术。

一旦扼住上面两个环节，也就找到了近乎于报仇雪恨般痛快的备份之道：但逢保存或关闭文档，不分青红皂白就攫他一份，貔貅般狠狠掖住，并且彻底在 Microsoft 的领地范围外留存一份，无论如何也不会被其愚蠢的备份机制所伤。

背后的机制非常简单，我实现准备一个专业的备份文件夹，再用 Keyboard Maestro 拦截 ⌘Command\-S 和 ⌘Command\-W 两个操作——当然，限于 Microsoft Word——截住后先以 精确到秒的时间戳 原文件名 的命名规则将当前文件存一份到备份文件夹中，再继续保存或关闭当前文件。

为获取当前文件，此 Macro 用到了最新版 Keyboard Maestro 中的 Token %FrontDocumentPath%；而在保存文件时，则假借 %ICUDateTime%yyyyMMddHHmmss% 和 %WindowName%1% 分别时间戳获得文件名（还需加

---

[前往标准阅读页](https://utgd.net/article/21025?audience=web)
