script Bash SFTPing no servidor remoto e baixar arquivos, cd no diretório apropriado na máquina local

1

Eu tenho um cron no meu servidor Ubuntu que executa este script bash diariamente:

#!/usr/bin/expect -f
spawn sftp user@ip
expect "password:"
send "password\n"
expect "sftp>"
send "cd remote_directory\n"
expect "sftp>"
send "lcd ~/dtc/data/outstanding\n"
expect "sftp>"
send "mget * \n"
expect "sftp>"
send "exit\n"
interact

Ele se conecta a um servidor remoto via SFTP e baixa vários arquivos. Isso não está funcionando, no entanto, eu quero que esses arquivos apareçam em um determinado diretório na máquina (meu servidor) executando este script.

Isso é o que eu estou tentando fazer na linha 8 sem sucesso. Como posso executar este script através do cron e me certificar de que ele esteja no diretório correto do meu servidor para que ele coloque os arquivos baixados no diretório correto?

    
por Jack Martell 20.05.2016 / 16:59

1 resposta

0

A solução mais simples é cd no diretório em que você deseja salvar os arquivos e, em seguida, executa o script expect, deixando de fora o comando lcd do script na linha 8.

    
por 20.05.2016 / 18:56