首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Android 10手机上的find命令中排除文件夹树

如何从Android 10手机上的find命令中排除文件夹树
EN

Stack Overflow用户
提问于 2022-04-23 23:00:13
回答 1查看 63关注 0票数 1

我有这样一个命令,可以清除我的Android 10手机上所有应用程序3天前的缓存文件:

代码语言:javascript
复制
find /data/data/*/cache -type f -mtime +3 -exec rm -r {} +

现在,我要排除文件夹/data/data/org.fdroid.fdroid/cache及其子文件夹。我遇到两个问题

  1. 要排除的文件夹路径位于查找命令的根路径之下,因此不工作(不排除)

find /data/data/*/cache -type f -not \( -name org.fdroid.fdroid \) -print

(用于-print的测试)

当我缩小到

  1. 的根路径并尝试使用-path-name参数(如

)时,

find /data/data -path */cache/* -type f -not \( -name org.fdroid.fdroid \) -print

我会遇到错误,比如

查找:错误的arg 'data/cache/backup_stage‘和-not参数被忽略。

这意味着find不是从命令中定义的根路径开始,而是从电话/的根开始,与我所发现的所有描述相反。

在这里How to exclude a directory in find . command

在这里,Remove only files in directory on linux NOT directories和其他地方,我没有找到解决方案。

我怎么才能在我的手机上做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-24 04:34:30

我想是这样的。

代码语言:javascript
复制
find /data/data/*/cache -type f -not -path '/data/data/org.fdroid.fdroid/*' -mtime +3 -delete

代码语言:javascript
复制
find /data/data/*/cache -type f -not -path '/data/data/org.fdroid.fdroid/cache/*' -mtime +3 -delete
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71984212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档