.DS_Store (英文全称 Desktop Services Store)[1] 是一种由苹果公司Mac OS X 操作系统所创造的隐藏文件,目的在于存贮目录的自定义属性,例如文件们的图标位置或者是背景色的选择。[2]该文件由 Finder 创建并维护,类似于 Microsoft Windows 中的 desktop.ini 文件。

目的

尽管这些文件本来是为Finder所使用,但它们被设想作为一种更通用的有关显示设置的元数据存储,诸如图标位置和视图设置。[1] 例如,在Mac OS X 10.4 "Tiger"中.DS_Store包含了一目录的所有文件的Spotlight注释。然而,在Mac OS X 10.5 "Leopard"中这种方式又被更改了,注释(现称为关键字)被改成存储在了扩展文件属性中。[来源请求]

存放

默认情况下,Mac OS X的Finder程序会在进行存取的每个目录下创建.DS_Store文件,甚至是在远程系统上的目录(例如通过SMB连接或者苹果文件协议英语Apple Filing Protocol连接来共享的目录),并且甚至如果用户仅仅通过移动该目录的Finder窗口自定义了其显示。[3] 这与既存的在先前版本的Finder中为了同样目的所使用的方式的系统形成了对比,先前的只会放置一些不可见文件于卷的根目录下(甚至在外部文件系统上),并总是将整个驱动器的所有目录的设置与元数据存储在这类文件的单一集合中。

Mac OS X 10.5 "Leopard"发布前,.DS_Store文件在Windows的文件系统上是可见的。[4]

在收到用户们对远程系统上.DS_Store文件会自动创建的投诉之后,苹果公司在其技术支持站点发表了一篇文章,详细讲述了如何禁止远程.DS_Store文件利用网络连接进行的创建。[5] 然而,这一操作指南并不适用于本地驱动器,包括USB闪存盘.

禁用或启用自动生成

可通过Terminal输入以下命令来禁止或恢复在网络文件夹上自动生成.DS_Store:

  • 禁止.DS_store生成:

defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE

  • 恢复.DS_store生成:

defaults delete com.apple.desktopservices DSDontWriteNetworkStores

可通过Terminal输入以下命令来禁止或恢复在移动设备自动生成.DS_Store[6]

  • 禁止.DS_store生成:

defaults write com.apple.desktopservices DSDontWriteUSBStores -bool TRUE

  • 恢复.DS_store生成:

defaults delete com.apple.desktopservices DSDontWriteUSBStores

相关条目

参考

  1. ^ 1.0 1.1 Arno Gourdol. On the origins of .DS_Store [.DS_Store的由来]. arno.org. 2006年10月1日 [2019年1月14日]. (原始内容存档于2015年5月12日). 
  2. ^ Adobe. Remove .DS_Store files from Mac OS X. adobe.com. 2016年8月22日 [2019年1月14日]. (原始内容存档于2019年1月15日). 
  3. ^ Rixstep. .DS_Store. rixstep.com. 2003年3月21日 [2011年8月10日]. (原始内容存档于2011年7月19日). 
  4. ^ Prevent creation of .DS_Store files in network shares. www.greci.cc. 2007年11月12日 [2011年8月10日]. (原始内容存档于2015年7月9日). 
  5. ^ Apple Inc. Mac OS X v10.4 and later: How to prevent .DS_Store file creation over network connections. Apple Support. 2011年11月7日 [2019年1月14日]. (原始内容存档于2018年9月24日). 
  6. ^ 如何防止macOS在外接硬碟留下檔案夾相關聯的設定檔. 2019年2月27日 [2023年3月28日]. (原始内容存档于2024年3月28日). 

站外链接

参考资料