rsync 特定のディレクトリ

rsync 特定のディレクトリ

以下は私のディレクトリ構造のディレクトリです。

rsyncアーカイブディレクトリのサブディレクトリの内容のみを実行し、他のすべての内容を除外したいと思います。

./
ap/
ap/aploader/
ap/aploader/archive/
ap/as400/
ap/as400/archive/
ce/
ce/archive/
edi/
edi/810/
edi/810/archive/
fin/
fin/adp/
fin/adp/archive/
gl/
gl/adp/
gl/adp/archive/
gl/as400/
gl/as400/archive/
gl/dcb/
gl/dcb/archive/
om/
om/pricelist/
om/pricelist/archive/
om/sygma/
om/sygma/archive/

ソースディレクトリとターゲットディレクトリのディレクトリ構造は同じですが、アーカイブディレクトリのみが必要ですrsync

たとえば、

以下の内容はすべて に/xx/inbound/om/pricelist/archiveコピーする必要があります。/yy/inbound/om/pricelist/archivexx/inbound/om/sygma/archive/yy/inbound/om/sygma/archive

以下を試しましたが、必要に応じて機能しませんでした。

rsync --include '**archive/***' --exclude '*' -avzh -avzh /xx/inbound/ /yy/inbound

ベストアンサー1

あなたが逃した唯一のことは、最初にアーカイブディレクトリにつながるすべてのディレクトリを含むことです。返品--include='*/'。これは、ディレクトリを除外すると(「*」と表示されます)、その下のすべての項目が除外されるためです。

rsync --include='*/' --include='**archive/***' --exclude='*' -avzh /xx/inbound/ /yy/inbound

それ以外には2セットは必要ありません。'-avzh'

おすすめ記事