未保存的文件在Lion中会放在哪里?
我不保存就退出了TextEdit,因为我没有保存的意图,但是通过自动保存文件,仍然可以保存文件,因为当我重新打开TextEdit时,我正在处理的文件就在那里了(即使我很难使用简历>。<)。所以我想知道文件是否被保存了吗?
未保存的文件在Lion中会放在哪里?
我不保存就退出了TextEdit,因为我没有保存的意图,但是通过自动保存文件,仍然可以保存文件,因为当我重新打开TextEdit时,我正在处理的文件就在那里了(即使我很难使用简历>。<)。所以我想知道文件是否被保存了吗?
Answers:
该目录有多种用途,Apple可能尚未记录其中的一些用途。
预览和TextEdit等应用程序。
将图像复制到剪贴板。打开预览,关闭所有窗口,使用“从剪贴板新建”命令,退出。
打开TextEdit,关闭所有窗口,在新窗口中键入内容,然后退出。
在终端中,运行两个命令:
ls -@l ~/Library/Containers/com.apple.Preview/Data/Library/Autosave\ Information
ls -@l ~/Library/Containers/com.apple.TextEdit/Data/Library/Autosave\ Information
未保存的…文件将被列出。
文件系统,例如MS-DOS(FAT);使用AFP 3.3或SMB挂载的卷;等等。
与文件服务器建立AFP或SMB连接。使用“预览”在该服务器上打开图像,编辑该图像,退出而不保存版本,并断开与服务器的连接。
在终端中,运行命令:
ls -lrt ~/Library/Containers/com.apple.Preview/Data/Library/Autosave\ Information
列表的底部将是一个目录,其中包含系统自动保存的版本。
在相同的网络环境中:如果重新打开“预览”,则系统可能会重新连接到文件服务器。然后,在远程文件的版本浏览器视图中,时间轴将包括本地文件。
(我可以更详细地介绍,但这与开头的问题无关。)
除了上面提到的两个目的外,~/Library/Containers
还有其他目的。
允许系统管理这些区域中的文件。
避免数据丢失;不要不尝试不必要的更改~/Library
或子目录。
/private/var/folders
等等,因此您的回答获得了我的赞成。这绝对是一个问题,答案的混合(简短或长期)可以增加价值。
查找未保存的TextEdit更改的主要位置是 ~/Library/Containers/com.apple.TextEdit/Data/Library/Autosave Information/
它取决于文档的状态,并且很复杂(因为一旦保存并首次命名文件,未保存的更改也可能存在)。
第一种类型-“幕后”启动文件-在/private/var/folders/
...中作为临时文件开始,并最终存储在中~/Library/Containers/
。它们被命名为无标题和无标题2 ,依此类推。每个应用程序都有其自己的目录,对于TextEdit-您将寻找一个文件,例如~/Library/Containers/com.apple.TextEdit/Data/Library/Autosave Information/Unsaved TextEdit Document.rtf
这些无标题的文档在标题栏中没有获得代理图标 -只是TextEdit选择的名称:
除了带有这些未保存文件的普通撤消/重做缓冲区之外,您没有任何版本,锁定或更改通知。
⌘+S
第一个“ 保存”将启用版本存储及其所有功能。这是当文件在文件系统中获得更熟悉的位置时,可能会使用无标题X以外的名称。代理图标是不再是自动保存文档的线索。
该文件不再仅存储在其中~/Library/Containers/
-第一版保存在用户在文件打开/保存对话框中选择的任何位置。
对已保存文档的任何修改都会使“已编辑 ”一词出现在其标题栏中:
上面的文件有:
至此,您拥有了用于回退对该文件所做的更改的全套工具:
~/Library/Containers/
/.DocumentRevisions-V100
保存版本会使标题栏中的“已编辑 ”一词消失。如果将鼠标悬停在文件名周围,并且整个版本的基础结构都将接管,则会在此处显示版本菜单。我将把它的原理留给另一个答案-这足够长了。
TextEdit创建和修改文件时,还会更新许多其他文件:
系统自动保存和版本控制方法应确保:
/Library/Contents
了阅读/Library/Containers
……bmike,我做了一些其他更改,希望不会破坏您原著的本质。我们有不同的写作风格,因此回滚等不会造成任何犯罪。特别令人感兴趣(没有给出示例):有时在标题栏中显示“已编辑 ” 时,~/Library/Containers
将包含至少一个由用户明确保存的版本,而不包含系统自动保存的版本。电影作为答案的一部分(针对一个不同但重叠的问题),应有助于使事情更清晰,但不要仓促。
~/Library
临时显示是无害的(这是Finder的“转到”菜单中的alt / option键选项)。我建议谨慎地永久显示它,它是楔子的细端。在该楔形的其他厚度上有诸如防止写入某些区域的概念(例如),其中某些概念在最不期望的情况下肯定会引起问题,因此,我鼓励人们在楔形最薄的一端尊重系统行为……除此以外的任何事物。通常由用户承担风险。希望能有所帮助。
根据John Siracusa对Lion的评论,它保存在/.DocumentRevisions-V100中
/.DocumentRevisions-V100/db-V1/db.sqlite
)包含用于跟踪文件的表,这些文件的各个版本(Apple称为“世代”)以及数据的存储位置。”
根据Apple的开发人员文档,所有尚未明确保存的新文档都将自动保存在~/Library/Autosave Information
:
自动文档保存由就地自动保存支持。就地自动保存和其他地方自动保存都可以防止用户由于应用程序崩溃,内核崩溃和电源故障而丢失工作。但是,就地自动保存与其他地方的自动保存不同之处在于,它会覆盖实际的文档文件,而不是在其旁边写入包含自动保存的文档内容的新文件。(就地自动保存通过先写入新文件,然后在完成后将其移动到文档文件的位置来执行安全保存。)
文档体系结构仍然在其他位置使用自动保存功能来保存具有内容但尚未被用户明确保存和命名的无标题文档。在这种情况下,未标题的文档将自动保存在中
~/Library/Autosave Information
。另外,NSDocument
将文档的早期版本保存在其他位置,使用户可以访问以前的版本。
“另外,NSDocument
将文档的较早版本保存在其他位置”部分是指.DocumentRevisions-V100
我假设的隐藏文件夹。
因此,如果您已将新文档打开足够长的时间,以使其可以多次保存,那么这一切都意味着最新版本存储在一个文件中,~/Library/Autosave Information
而较早版本存储在该.DocumentRevisions-V100
文件夹中(位于主文件夹所在的驱动器)。
旁注:这的确使我想知道这些文件中的文件是否~/Library/Autosave Information
还会在某个时候自动删除,以避免堆积这些您不想保存的快速TextEdit文档。库不是经验不足的用户不应该浪费的文件夹。据我了解,Lion现在甚至默认将其隐藏。我想它的内容也不会出现在Spotlight中。如果没有自动删除文件,则“桌面”或“文档”文件夹似乎是自动保存的更好目的地。
~/Library/Autosave Information
我找不到与TextEdit有关的任何内容,但是在该应用程序中,我确实有许多无标题的窗口可以恢复。也许值得在“我是否可以更改Lion的“版本”功能保存文件的频率?。
~/Library/Autosave Information
所指的含义。对于常规应用程序,这是用户的主文件夹。但是对于沙盒应用程序(例如TextEdit),实际上是这样~/Library/Containers/com.company.AppIdentifier/Data
,在TextEdit的情况下给出了最终结果:~/Library/Containers/com.apple.TextEdit/Data/Library/Autosave Information
似乎未命名,未保存文件的位置因应用程序而异。不管您使用哪个自动启用保存功能的应用程序创建文件,都可以使用Spotlight查找未保存的临时文件。
~/Library/Containers
发现您以外,还有哪些地方?
我通过执行TM备份找到了文件,并能够恢复其中一些未保存的编辑(但不是我要找的)。我在〜/ Library / Containers / com.apple.TextEdit / Data / Library / Autosave Information /文件夹中找到了文件。.因此,谢谢和TM备份可能对某些人有所帮助。