前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android手机批量删除和添加.nomedia文件

Android手机批量删除和添加.nomedia文件

作者头像
用户1127987
发布2018-06-05 12:06:13
5.2K0
发布2018-06-05 12:06:13
举报
文章被收录于专栏:deed博客

所属分类:技术

Android手机里媒体扫描往往是个耗电大户,它在后台不停的监控SD卡上所有文件夹中内容的变化,只有文件夹下有一个名为“.nomedia”的文件的文件夹才会被跳过扫描。.nomedia是一个0kb大小的空文件,所以它并不占用空间。为SD卡上所有的文件夹及子文件夹里都创建一个.nomedia文件即可达到加快开机媒体扫描速度同时大幅降低手机功耗的目的。 不过Android手机的SD卡目录结构是很繁杂很混乱的,如果一个个去创建.nomedia估计会让人吐血,写个脚本去创建?好主意,不过还有更简单的方法…… Android是基于Linux开发的,所以我们可以直接使用Linux里强大的find命令来实现这一目的。 注:在大多数Android手机里find命令是不存在的,需要安装了busybox后才会有。 如果我们想给SD卡里的所有子目录添加.nomedia文件,很简单,一行命令: find /sdcard/ -name ’*’ -type d -exec touch {}/.nomedia ; 或者要求他只给4层以内的子目录添加.nomedia文件 find /sdcard/ -name ’*’ -type d -maxdepth 4 -exec touch {}/.nomedia ; 但更多的时候我们需要保留几个允许媒体扫描的目录用于放置音乐、视频和照片等等,那我们就需要排除一些特定的目录,没问题,照样一行命令解决,虽然这一行长了点…… find /sdcard/ ( -ipath "/sdcard/Music" -o -ipath "/sdcard/Camera" -o -ipath "/sdcard/Photo" -o -ipath "/sdcard/Video" -o -ipath "/sdcard/Pictures" -o -ipath "/sdcard/Movies" -o -ipath "/sdcard/DCIM" ) -prune -o -type d -maxdepth 4 -print -exec touch {}/.nomedia ; 如上例中我排除了/sdcard/Music、/sdcard/Camera、/sdcard/Photo、/sdcard/Video、/sdcard/Pictures、/sdcard/Movies和/sdcard/DCIM这几个目录及他们的子目录,如果你有自己想排除的目录也可按上例添加。 有批量添加.nomedia的自然也有批量删除.nomedia的,还是一行命令: find /sdcard/ -name ’.nomedia’ -type f -exec rm {} ; find真是一个很强大的命令,省去了遍历所有文件夹的痛苦。而且给大部分目录和子目录添加.nomedia文件后手机的待机时间也有明显的提升,也不枉我花了几小时折腾这命令……

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2013年12月14日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档