se você estiver rsyncing de uma máquina local para um host remoto, isso funcionará:
rsync -avzl -e ssh /directory/with/files/ [email protected]:/new/directory/
Eu estava transferindo vários milhares de arquivos a cada ~ 1MB via scp e minha conexão foi quebrada após os primeiros 2k arquivos ou mais. Eu queria saber se havia uma maneira de retomar a transferência recursiva sem começar de novo. Algo como
$ scp -r [email protected]:/datafiles/ ./
... Happy Transfer ...
... BREAK! ...
$ rsync -P [email protected]:/datafiles/ ./
... Continue transf...
O problema é que não consigo obter a sintaxe correta se for possível. Alguém pode esclarecer se / como isso pode ser feito?
PS. Se você especificar a barra depois de "arquivos de dados" na linha rsync, isso transfere o diretório ou seu conteúdo? Eu vi comentários conflitantes quando eu pesquisei.
se você estiver rsyncing de uma máquina local para um host remoto, isso funcionará:
rsync -avzl -e ssh /directory/with/files/ [email protected]:/new/directory/
A seguinte linha deve fazer o truque para isso:
rsync --partial --progress --rsh = ssh -r [email protected]: / datafiles / ./
Eu nunca usei isso para diretórios recursivos antes, mas quando eu mandei uma mensagem agora parecia funcionar como esperado.
O comando rsync que você listou funcionaria, se você apenas adicionou "-r". mas você provavelmente também quer "-a" e "-v".
E sobre a barra final, [email protected]: / data / é equivalente a / data / *, em outras palavras, se você adicionar uma barra, copia todo o conteúdo. mas [email protected]: / data seria o próprio diretório [e naturalmente, suas subpastas]
Mesclar as respostas de Kibitzer e Tyler funcionou melhor para mim:
rsync --partial --progress -avzl -e ssh /directory/with/files/ [email protected]:/new/directory/
(rsyncing recursivamente e mostrando o progresso de cada arquivo)