0

我需要将一些文件复制到另一个目录。源码结构如下

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/foofrom src,效果很好。但是,我在 Mac OSX 中找不到合适的替代品 -cp不支持parents或等效选项,并且install支持-d应该保留结构,但给我以下错误:install: foo1.h exists but it's not a directory

我被困住了。有任何想法吗?

4

1 回答 1

1

您可以使用rsync,例如

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

顺便说一句,您可能不想将东西安装到 /usr/include,因为它很可能会被系统更新破坏。考虑使用例如 /usr/local/include 代替。

于 2011-03-29T15:51:24.167 回答