Mac OS下不产生.DS_Store 隐藏文件

.DS_Store主要是用来储存 “目录是以何种型式显示”的设置,例如说打开的时候要放在屏幕的什么地方,要用 small icon/big icon/list 的方式显示之类。如果你不是很在意这些的话,应该是可以大胆地把这个给干掉

和别人交换文件(或你做的网页需要上传的时候)应该把 .DS_Store 文件删除比较妥当,因为通过 .DS_Store 可以知道这个目录里面所有文件的清单

 

删除当前目录下已经存在的

sudo find . -name ".DS_Store" -delete

 

永久不产生

方法一:

打开终端 -  (shift + command + N)输入下面的命令  然后重启 OK
defaults write com.apple.desktopservices DSDontWriteNetworkStorestrue true
 
方法二:
使用 Asepsis : http://asepsis.binaryage.com ,它将创建 .DS_Store 文件重定向到另一个指定的目录中去,从而阻止了在每一个文件目录中都生成 .DS_Store 文件,默认目录为 /usr/local/.dscage ,通过执行 asepsisctl clean 命令可以将重定向的目录中所生的文件清空之。 

实现原理 
Mac OS X实现了一个私有的系统框架 DesktopServicesPriv,这个框架负责创建和操作 .DS_Store 文件,Finder 以及其他的应用程序也使用这个框架,DesktopServicesPriv 使>用标准的 libc 调用来操作 .DS_Store 文件,于是通过对 DesktopServicesPri 进行封装,在创建和操作 .DS_Store 文件时,加上指定的目录作为前缀,即可将在每一个目录下>创建一个 .DS_Store 文件的操作重定向到某一个特定的目录中去了。
 
个人感觉还是方法二比较好用,既不影响DS_Store的功能,也不会产生副作用

posted on 2014-12-15 16:18  z_wind  阅读(692)  评论(0编辑  收藏  举报

导航