crontab um script bash que copia certos arquivos

0

Primeiro, gostaria de dizer que sou péssimo com scripts, então esse tem sido um verdadeiro desafio para mim. Qualquer entrada seria ótima!

Eu gostaria de automatizar uma transferência sftp a cada 24h. Se eu tiver sorte em um futuro próximo, talvez seja possível montar esse compartilhamento ou pelo menos ter uma conexão ssh para usar rsync ou scp.

Ubuntu 10.04 Em / res / output / terei novos diretórios criados o tempo todo (com um contador adicionado ao nome do diretório) como: /res/output/my_output_17/.pdf /res/output/my_output_17/addon/addon_1/.db (os diretórios "addon / addon_1 /" sempre tem esse nome, então somente my_output_ * irá mudar o nome, bem como os 2 arquivos de interesse. Eles devem ser despejados em um diretório sftp remoto, onde devemos salvá-los no diretório my_output_ * que o script também precisa ser criado.

Como posso fazer isso? Quero ter certeza de que apenas copio os arquivos não transferidos. Eu diria que preciso preencher um "arquivo db" e garantir que esses arquivos sejam ignorados na próxima vez que o script estiver sendo executado?

Obrigado

    
por Mackis5 14.11.2013 / 15:00

1 resposta

0

Eu usaria rsync para copiar o que estiver ausente / diferente no remoto.

por exemplo, rsync -av /res/output user@remotehost:/where/you/want/them

adicione essa linha ao seu crontab

O rsync precisará fazer o login no seu host remoto, então você também deve corrigir isso se isso não funcionar para você agora. (você pode ssh em seu host remoto sem precisar fornecer uma senha? As configurações de chaves públicas / privadas?)

    
por 14.11.2013 / 15:24