ディレクトリの内容をコピーせずにファイルとディレクトリをコピーする方法は?

ディレクトリの内容をコピーせずにファイルとディレクトリをコピーする方法は?

findいくつかのディレクトリを選択してファイルを別の場所にコピーするコマンドがあります(私が--parents望むのは、コマンドによって出力されたディレクトリが内容findなしでコピーされることです(ただし、所有権とモードは同じでなければなりません)。

ファイルを使用または制限できますが、find必要に応じてデフォルトの所有権とモードを使用してディレクトリが作成されます。オプションを使用すると、ディレクトリが正しい所有権とモードだけでなく、すべてのファイルとともにコピーされます。デフォルトでは、リストのディレクトリはその内容ではなく、ディレクトリメタデータのみをコピーしたいと思います。-type f! -type d-rcp

この目標を達成する方法は?

ベストアンサー1

私の考えの最も簡単なツールです。ディレクトリが与えられたときに繰り返さないというオプションがpaxあるからです。-d

そのため、ディレクトリのみをコピーするには、ディレクトリがコピーされたことを確認できるように手順に従ってください。ファイルをコピーしないでください。次のタスクも実行できます。

find somewhere -type d | pax -wd  > archive.tar
tar vtf archive.tar
( cd somewhere_else && tar xpf - ) < archive.tar

満足すれば、アーカイブコンテンツの中間印刷(tar vxf archive.tar)を削除し、中間archive.tarファイルをパイプに置き換えることができます。

おすすめ記事