ファイル foo.txt は、リモート マシンの /home/user/foo.txt にあります。
ローカル マシンには存在しません。
rsyncでfoo.txtを削除したい。
ローカル マシンまたはリモート マシンの /home/user に他のファイルがあるかどうかはわかりません (また、この質問の目的のために、わからないと仮定します)。そのため、ディレクトリ全体を同期することはできません。
リモート マシンで foo.txt を削除するには、どのrsyncコマンドを使用できますか?
ファイル foo.txt は、リモート マシンの /home/user/foo.txt にあります。
ローカル マシンには存在しません。
rsyncでfoo.txtを削除したい。
ローカル マシンまたはリモート マシンの /home/user に他のファイルがあるかどうかはわかりません (また、この質問の目的のために、わからないと仮定します)。そのため、ディレクトリ全体を同期することはできません。
リモート マシンで foo.txt を削除するには、どのrsyncコマンドを使用できますか?
これを試して:
rsync -rv --delete --include=foo.txt '--exclude=*' /home/user/ user@remote:/home/user/
(最初に実行してテストすることを強くお勧めし--dry-runます)sshを使用した方が簡単なようですが...
ssh user@remote "rm /home/user/foo.txt"
それは少し些細なことですが、私のように、rsyncを使用してリモートサーバーからディレクトリのコンテンツを削除する方法を探してこのページにアクセスした場合は、次のようにします。
空のモックフォルダを作成します。
mkdir mock
それと同期します:
rsync -arv --delete --dry-run ~/mock/ remote_server:~/dir_to_clean/
--dry-run実際に行うには、上の行から削除してください。