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.