build/debug
我想找到文件夹中的子目录
是否有任何 shell 命令可以做到这一点?
答案1
这应该可以。
find . -type d -path '*/build/debug'
测试工具:
$ mkdir -p tester/{1..3}/build/debug
$ find tester -type d -path '*/build/debug'
tester/1/build/debug
tester/2/build/debug
tester/3/build/debug
答案2
如果打开 globstar (使用 shopt -s globstar
),您可以在 bash 中使用双星号作为递归通配符。
$ mkdir -p tester/{1..3}/build/debug
$ mkdir -p tester/anotherlevel/{1..3}/build/debug
$ mkdir -p tester/anotherlevel/yetanother/{1..3}/build/debug
$ shopt -s globstar
$ file tester/**/build/debug
tester/1/build/debug: directory
tester/2/build/debug: directory
tester/3/build/debug: directory
tester/anotherlevel/1/build/debug: directory
tester/anotherlevel/2/build/debug: directory
tester/anotherlevel/3/build/debug: directory
tester/anotherlevel/yetanother/1/build/debug: directory
tester/anotherlevel/yetanother/2/build/debug: directory
tester/anotherlevel/yetanother/3/build/debug: directory
我在这里使用文件只是为了展示我们正在谈论的内容,但您可以将它用于各种事情。
答案3
grep 方式
find /your/sub/dir -type d -print0
将所有文件打印到控制台。现在使用 grep 只输出您想要查看的文件
find /home/tim/Apps -type d -print0 | grep -FzZ "debug/build"
答案4
执行命令
find -name 'foldername'
这将找到该名称的所有文件夹(和文件)并显示其路径。搜索从您当前所在的文件夹开始向下。因此,如果您不知道它在哪里,cd /
请先找到位于根目录的顶级文件夹。您可能还想sudo
在命令前面添加,以确保搜索检查您没有权限的文件夹。