bash – 使用find排除子目录

前端之家收集整理的这篇文章主要介绍了bash – 使用find排除子目录前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这样的目录结构
data
|___
   |
   abc
    |____incoming
   def
    |____incoming
    |____processed
   123
    |___incoming
   456
    |___incoming
    |___processed

在Data目录中的所有文件夹中都有一个传入子文件夹。我想要从除了def / incoming和456 / incoming dirs之外的所有文件夹和子文件夹中获取所有文件
我尝试了以下命令

find /home/Feeds/data -type d \( -name 'def/incoming' -o -name '456/incoming' -o -name arkona \) -prune -o -name '*.*' -print

但它不能按预期工作。

Ravi

@H_301_15@ 这工作:
find /home/Feeds/data -type f -not -path "*def/incoming*" -not -path "*456/incoming*"

说明:

> find / home / Feeds / data:从指定路径开始递归查找> -type f:仅查找文件> -not -path“* def / incoming *”:不要包含任何带有def / incoming作为其路径的一部分> -not -path“* 456 / incoming *”:不包含任何带有456 / incoming作为其路径的一部分

原文链接:https://www.f2er.com/bash/391621.html

猜你在找的Bash相关文章