rsyncを使用して...
- 送信側でも削除された受信側のファイルを削除する
- 受信側のrsyncedディレクトリにある他のファイルを削除しない
たとえば、私がディレクトリを持っているとしましょうlocal-src
:
変更前: local-src
ローカルに含まれる...
a.txt
b.txt
c.txt
toのコンテンツに同期したいリモートディレクトリlocal-src
はという名前remote-src
です。
変更前: remote-src
リモートで含む...
a.txt
b.txt
c.txt
d.txt
README.md
私がいくつかのファイルを削除したとしましょうlocal-src
:
ローカル削除後: local-src
ローカルに含む...
c.txt
ソースで削除されたファイルが宛先でも削除されるように、ただし宛先で他のファイルを削除せずに、rsyncをどのように使用できますか?たとえば、宛先で次のようにしたいとします。
ローカル削除後: remote-src
リモートに含む...
c.txt
d.txt
README.md
つまり、a.txt
およびb.txt
リモートからも削除されますが、d.txt
とREADME.txt
放置されています。
rsyncでこれを達成する方法はありますか?
編集:評決はこれがrsyncでは不可能かもしれないということであるようです。これが必要な理由を尋ねられたので、私のユースケースを説明します。
Webサーバーがあるとします。そのWebサーバーには、多数のディレクトリがあります。たとえば、ディレクトリA
とpublic_html
サイトの提供元のディレクトリがあるとします。ディレクトリにファイルを作成する自動化されたプロセスがあるとしますA
。内にある可能性のある他の任意のファイルを削除せずに、ディレクトリに生成または更新されたファイルをrsync(または他のツールを使用して同期)したい。rsyncが誤って自分のウェブサイトを削除して欲しくないのは確かです。A
public_html
public_html
rsyncがこのジョブのツールではない場合、他の誰かが私がこれを行う方法を知っていますか?
rsync
どのファイルがすでにリモートフォルダにあるのかを知る方法がないので、これは可能ではないと思います。別のツールを見つける必要があるかもしれません。