rsync: 宛先のフォルダ/ファイルを削除から除外する方法

rsync: 宛先のフォルダ/ファイルを削除から除外する方法

この問題に関するスレッドをいくつか読みましたが、そこに記載されているコマンドはまだ機能しませんでした。

ファイルをrsyncしようとしていますフォルダ1(サブフォルダを含む1つの) にフォルダ2(含む1つのそしてb)フォルダを持たずにb削除されました。しかし、次のコマンドはそれを削除します:

rsync -av --exclude folder2/b/ --delete folder1/ folder2/

絶対パスやスラッシュ、スラッシュなしなどの他のバリエーションも機能しませんでした。そして、これは基本的に同じコマンドであるはずですが(フォルダ名を除いて)、

誰かアイデアありますか?

答え1

exclude オプションでは、b を指定するだけで十分です。

私の環境では正常に動作している次のコマンドを試していただけますか。

rsync -av --exclude b --delete フォルダ1/ フォルダ2/

編集: 安全のために、-n オプションが非常に役立ちます。これは、追加および削除される内容の予行演習を行います。

答え2

私はその方法で削除を回避しようとはしません。代わりに、子フォルダを rsync します。つまり、a をコピーして b に触れないようにするには、次のようにします。

rsync -av --delete folder1/a folder2/a

必要なすべてのフォルダーに対して繰り返します。

関連情報