Путаница относительно медленности рекурсивного поиска

Путаница относительно медленности рекурсивного поиска

Выполнение этой команды занимает более 2 минут:

find . -type d -wholename ./dev-abcd/efgh

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

 ls -lR | grep "^d" | wc -l
    2002

Когда я немного изменяю эту команду для поиска похожего каталога find, команда также возвращает ответ почти мгновенно.

ls -lR | grep "^d" | grep "efgh"

Это заставляет меня думать, что должно быть много скрытых подкаталогов. Но я не вижу много:

ls -ap | egrep "^\..*/$" | wc -l
       3

Почему findработа идет так медленно, что требуется 2 минуты, чтобы вернуть результат, а ls+ grepвозвращается в течение нескольких секунд?

Связанный контент