Я получаю различное количество файлов с помощью du -h и find:

loom@loom-desktop$ du -h ~/storage/Apps/*/trunk/test/*.cpp | wc -l
35
loom@loom-desktop$ find ~/storage/Apps/ -path */trunk/test/*.cpp | wc -l
111

В чем причина несоответствия и как перечислить все файлы с соответствующими размерами в данных ограничениях?

1 ответ1

2

Вы, кажется, ищете globstar . Сказать:

shopt -s globstar

и скажи:

du -h ~/storage/Apps/**/trunk/test/*.cpp    # note ** after Apps

Цитирование из руководства:

*

Соответствует любой строке, включая пустую строку. Когда опция оболочки globstar включена и ‘*’ используется в контексте расширения имени файла, два соседних ‘*’ используемые в качестве единого шаблона, будут соответствовать всем файлам и нулю или большему количеству каталогов и подкаталогов. Если после ‘/’ два соседних ‘*’ будут соответствовать только каталогам и подкаталогам.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .