SCPは変更されたファイルのみを転送します


30

サーバー間でファイルを転送するために以下のコマンドを使用しています

scp -rc blowfish /source/directory/* username@domain.net:/destination/directory

updateコマンドのように変更されたファイルのみを転送する方法はありますcpか?

回答:


52

rsync あなたの友だちです。

rsync -ru /source/directory/* username@domain.net:/destination/directory

コピー元に存在しなくなったコピー先のファイルを削除する場合は、--deleteオプションを追加します。


4
ただし、Webサーバーと同期しており、そのサーバーがHTMLをキャッシュする場合、--delete古いページの訪問者はもはや存在しないアセットを要求する可能性があるため、使用したくない場合があります。
ジャクソン

@Jacksonクリーンプロセスでは、ソースにキャッシュや設定などの可変データは含まれません。
クリスピレン

いくつかのケースでは、私は持っていない自分のドメインのサーバー外部と契約していrsyncたが持っているがscp。数行のスクリプトが必要な場合でも、同等のソリューションはありますか?
iX3

答えは役に立ちますが、問題はscp自体で達成できるかどうかでした。
Mladen B.

1

一般的に、理由があるのでscpを要求します。つまり、ターゲットにrsyncdをインストールできません。

files=`find . -newermt "-3600 secs"`

for file in $files
do
       sshpass -p "" scp "$file" "root@$IP://usr/local/www/current/$file"
done
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.