sftp get -r sem sobrescrever

3

Eu geralmente me conecto a um banco de dados pelo protocolo sftp e recebo os dados fazendo get -r

existe alguma opção para pular todos os arquivos existentes no meu computador? Eu tentei obter -r --overwrite, mas não funciona. (Eu sei que eu poderia definir meus arquivos em somente leitura, mas gostaria de encontrar uma maneira melhor).

    
por p.deman 16.03.2017 / 14:31

3 respostas

2

Não, isso não é possível. A página de manual para sftp não menciona nenhuma opção que faça isso funcionar. Seria melhor copiar os arquivos para algum local conhecido como vazio e depois copiar para a sua localidade desejada com

get -r remote_path/ empty_path/
!cp --no-clobber empty_path/ real_target/
    
por Jakuje 16.03.2017 / 15:40
1

Sugiro usar rsync over ssh :

rsync -avz -e ssh --progress user@server:/var/db ~/db

Algumas outras leituras:

por mgor 16.03.2017 / 20:02
0

Isso é possível com o sftp. Use 'get -a -r'. De acordo com a página man do sftp para o Ubuntu: link , a opção -a tenta continuar transferências interrompidas e apenas sobrescreve um arquivo se houver diferenças no arquivo.

    
por Dante 19.04.2018 / 23:43