O SCP transfere apenas arquivos modificados


30

Estou usando o comando abaixo para transferir arquivos entre servidores

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

Existe uma maneira de transferir apenas arquivos modificados, assim como o updatecomando cp?

Respostas:


52

rsync é seu amigo.

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

Se você deseja excluir arquivos no destino que não existem mais na origem, adicione a --deleteopção


4
Embora, se você estiver sincronizando com um servidor Web e esse servidor armazene em cache o HTML, talvez não queira usá-lo --delete, pois os visitantes de uma página antiga podem solicitar um ativo que não existe mais.
— Jackson

@Jackson, um processo limpo não incluirá dados variáveis ​​como caches ou configurações nas fontes.
— Chris Pillen

Em alguns casos, lidei com servidores fora do meu domínio que não têm, rsyncmas têm scp. Existe uma solução comparável, mesmo que precise de algumas linhas de script?
— IX3

A resposta é útil, mas a questão era: isso pode ser alcançado com o próprio scp.
— Mladen B.

1

Geralmente, solicita-se scp porque existe uma razão. Ou seja, não é possível instalar o rsyncd no destino.

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

for file in $files
do
       sshpass -p "" scp "$file" "root@$IP://usr/local/www/current/$file"
done
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.