Как найти подкаталог?

Я хочу найти подкаталог build/debug в папке

. Есть ли какая-либо команда оболочки, которая может сделать это?

1
задан 24 September 2013 в 19:10

4 ответа

Это должно сделать это.

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
0
ответ дан 24 September 2013 в 19:10

Если вы включите 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

Я использую файл здесь, чтобы показать, о чем мы говорим, но вы можете использовать это для всех видов вещей.

0
ответ дан 24 September 2013 в 19:10

Выполните команду

find -name 'foldername'

. Он найдет все папки (и файлы) с таким именем и покажет путь к нему. Поиск начинается с текущей папки, в которой вы находитесь, вниз. Так что, если вы не знаете, где он находится, сначала cd /, чтобы вы оказались в корневой верхней папке. Возможно, вы также захотите добавить sudo перед командой, чтобы убедиться, что у папки проверки поиска у вас тоже нет прав.

0
ответ дан 24 September 2013 в 19:10

grep way

find /your/sub/dir -type d -print0 

печатает все ваши файлы на консоль. Теперь выводите только те, которые вы хотите увидеть, используя grep

find /home/tim/Apps -type d -print0 | grep -FzZ "debug/build"
0
ответ дан 24 September 2013 в 19:10

Другие вопросы по тегам:

Похожие вопросы: