Назад | Перейти на главную страницу

Как указать все файлы во всех подкаталогах в оболочке unix?

Я использую Max OS X. Я пытаюсь скопировать все файлы заголовков (.h) в определенный каталог (./aaa) из всех подкаталогов исходного каталога. (./src/) Эта команда сработала хорошо.

cp ./src/*/*.h ./aaa

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

find /src -name '*.h' -print0 | xargs -0 cp --target-directory=./aaa

(Работает значительно лучше, чем -exec для большого количества файлов)

find ./src -name '*.h' -exec cp {} ./aaa \;