установить команду в OSX и структуру каталогов - PullRequest
0 голосов
/ 29 марта 2011

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

src/foo1.h
src/foo2.h
src/bar/foobar.h

Мне нужно скопировать их, чтобы они оказались здесь

/usr/include/foo/foo1.h
/usr/include/foo/foo2.h
/usr/include/foo/bar/foobar.h

В Linux я использую cp -u --parents *.h bar/*.h /usr/include/foo из src, что прекрасно работает.Тем не менее, я не могу найти подходящую замену в Mac OSX - cp не поддерживает parents или эквивалентный параметр, а install поддерживает -d, который должен сохранить структуру, но дает мне следующееошибка: install: foo1.h exists but it's not a directory

Я застрял.Есть идеи?

1 Ответ

1 голос
/ 29 марта 2011

Вы можете использовать rsync , например,

rsync -a ./src/ /usr/include/foo/ --include \*/ --include \*.h --exclude \*

Кстати, вы, вероятно, не хотите устанавливать что-либо в / usr / include, поскольку это может быть засорено обновлениями системы. Рассмотрите возможность использования, например, Вместо этого / usr / local / include.

...