多くのヘッダー ファイル (.h) と他の .o および .c ファイルと他のファイルを含むディレクトリがあります。このディレクトリには、内部に多数のネストされたディレクトリがあります。ヘッダー ファイルのみを別のディレクトリにコピーし、新しいディレクトリで同じ構造を維持したいと考えています。
cp -rf oldDirectory newDirectory
すべてのファイルをコピーします。ヘッダファイルだけをコピーしたい。
(cd src && find . -name '*.h' -print | tar --create --files-from -) | (cd dst && tar xvfp -)
ファイルをコピーする代わりにハードリンクしたい場合は、cpio で同様のことを行うことができますが、後で少し mv'ing が必要になる可能性があります。大量のデータがあり、共有を気にしない (または共有する必要がある!) 場合は、この方法の方がはるかに高速です。dst に src が必要な場合、混乱します。これは、単なる副作用ではない場合です。
cp -rf oldDirectory/*.h newDirectory
またはそのようなもの(実際のパスに応じて)
find oldDirectory -type f -name "*.h" -print0 | xargs -file cp file newDirectory