Confusão em relação à lentidão da descoberta recursiva

Confusão em relação à lentidão da descoberta recursiva

Este comando leva mais de 2 minutos para retornar:

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

Isso me faz pensar que há muitos subdiretórios. Verifiquei isso com o comando abaixo, que retornou quase instantaneamente:

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

Quando faço uma ligeira variação deste comando para procurar um diretório semelhante ao find, o comando também retorna quase instantaneamente.

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

Isso me faz pensar que deve haver muitos subdiretórios ocultos. Mas não vejo muitos:

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

Por que o desempenho é findtão lento que leva 2 minutos para retornar um resultado que ls+ grepretorna em segundos?

informação relacionada