找到目录后如何列出子目录的内容

How to list the contents of a subdirectory after finding the directory

这是一个相当具体的问题,但本质上我想知道的是,是否可以在我搜索的目录下列出目录的内容。

我的情况是我有一个包含大量子目录的父目录,我想搜索这些子目录以查看它们是否包含某个字符串的目录。由于它太大了,我确保将深度限制为两个以避免不必要的搜索。第一个命令是这样的:

find . -maxdepth 2 -type d -name "MWACluster15"

这通常会 return 大约 30 场比赛。然后我想做的是列出其子目录之一的内容,称为 logs。我想也许可以做

find . -maxdepth 2 -type d -name "MWACluster15" | xargs ls logs/

可能会成功,但它只是 return 目录的直接内容。我要的是列出MWACluster15/logs/

的内容

有人知道这是否可能而无需编写 bash 脚本吗?

我想你可以使用这样的东西:

find . -maxdepth 2 -type d -name "MWACluster15" -execdir ls {}/logs/ \;

-execdir 从您感兴趣的目录所在的目录执行命令。 {} 是一个占位符,用目录名 "MWACluster15".

代替