.DS_store是什么?怎么删除?
DS_Store,英文全称是 Desktop Services Store,一种由macOS系统自动创建的隐藏文件,存在于每一个用「访达」打开过的文件夹下面。
- 作用:存储当前文件夹在桌面显示相关方面的一些自定义属性,包括文件图标的位置、文件夹上次打开时窗口的大小、展现形式和位置等。它存储的元数据仅仅被「访达」用于文件夹的自定义显示。
- 为什么要删除:在 macOS 与电脑之间拷贝或传输文件的时候,DS_Store 文件会默认被包含在内,可能会引起一些不必要的问题。
- 如何删除:
- 直接删除: 删除当前文件夹下的所有.DS_Store
find . -name '.DS_Store' -type f -delete
删除本机上所有的.DS_Storesudo find / -name “.DS_Store” -depth -exec rm {} \;
通过这种方式删除后,在再次使用访达打开文件夹时,.DS_Store还是会被创建 - Git仓库管理忽略DS_Store文件 这个是我大多数情况下的需求,.DS_Store对我无关紧要,但是又不想每次加
.gitignore
去忽略这个文件。- 将 . DS_Store 加入全局的 .gitignore 文件
echo .DS_Store >> ~/.gitignore_global
- 将这个全局的 .gitignore 文件加入Git的全局config文件中
git config --global core.excludesfile ~/.gitignore_global
这个是我大多数情况下的需求,.DS_Store对我无关紧要,但是又不想每次加.gitignore
去忽略这个文件。
- 将 . DS_Store 加入全局的 .gitignore 文件
- 目前为止还不能禁止Macos在本地磁盘上生成.DS_Store
- 可以禁止.DS_Store在网络设备上的生成
defaults write com.apple.desktopservices DSDontWriteNetworkStores true
- 禁止.DS_Store在USB设备上生成
defaults write com.apple.desktopservices DSDontWriteUSBStores true
- 可以禁止.DS_Store在网络设备上的生成
- 使用第三方daemon重定向.DS_Store
- Asepsis: 将 .DS_Store 重定向到统一缓存,而不是位于每个文件夹中
Warning: Asepsis is no longer under active development and supported under OS X 10.11 (El Capitan) and later.
- Asepsis: 将 .DS_Store 重定向到统一缓存,而不是位于每个文件夹中
- 直接删除: 删除当前文件夹下的所有.DS_Store
Reference
Enjoy Reading This Article?
Here are some more articles you might like to read next: