Script Bash SFTP en el servidor remoto y descarga de archivos, cd en el directorio adecuado en la máquina local

Script Bash SFTP en el servidor remoto y descarga de archivos, cd en el directorio adecuado en la máquina local

Tengo un cron en mi servidor Ubuntu que ejecuta 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

Se conecta a un servidor remoto a través de SFTP y descarga un montón de archivos. Esto no funciona, sin embargo, quiero que estos archivos aparezcan en un directorio determinado en la máquina (mi servidor) que ejecuta este script.

Esto es lo que intento hacer en la línea 8 sin éxito. ¿Cómo puedo ejecutar este script a través de cron y asegurarme de que se coloque en el directorio correcto de mi servidor para que coloque los archivos descargados en el directorio correcto?

Respuesta1

La solución más sencilla es cdingresar al directorio donde desea guardar los archivos y luego ejecutar el script esperado, omitiendo el lcdcomando del script en la línea 8.

información relacionada