これが私が使用するものです:
rsync -rav --include '*/' --exclude '*' --include '*.R' user@remote:/folder/. .
リモートフォルダとすべてのサブディレクトリにあるすべての.Rファイルをコピーしようとしています。その結果、すべてのディレクトリがコピーされましたが空です。
ここで私はどこで間違っていますか?
よろしくお願いします!
注:私はこの記事に言及しています:rsyncはincludeオプションを使用して特定の種類のファイルのみをコピーします。。
答え1
2つのことを変更し、1つの提案を考慮する必要があります。
.R
包含および除外ディレクティブは左から右に処理されるため、すべてを除外する前にファイル(その他)を含める必要があります。--prune-empty-dirs
ターゲットにのみ関連ディレクトリを作成するために使用します。-r
意味するように、そうする必要はありません。-a
だから
rsync -av --prune-empty-dirs --include '*/' --include '*.R' --exclude '*' user@remote:/folder/ .