원격 서버에 대한 SFTP의 Bash 스크립트 및 파일 다운로드, 로컬 시스템의 디렉토리를 수정하기 위한 CD

원격 서버에 대한 SFTP의 Bash 스크립트 및 파일 다운로드, 로컬 시스템의 디렉토리를 수정하기 위한 CD

매일 이 bash 스크립트를 실행하는 Ubuntu 서버에 cron이 있습니다.

#!/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

SFTP를 통해 원격 서버에 연결하고 여러 파일을 다운로드합니다. 이것은 문제 없이 작동하지만 이 스크립트를 실행하는 컴퓨터(내 서버)의 특정 디렉터리에 파일이 나타나기를 원합니다.

이것이 제가 8번째 줄에서 하려고 하는 일이지만 성공하지 못했습니다. cron을 통해 이 스크립트를 어떻게 실행하고 다운로드한 파일이 올바른 디렉토리에 배치되도록 내 서버의 올바른 디렉토리에 CD가 있는지 확인하려면 어떻게 해야 합니까?

답변1

가장 간단한 해결책은 cd파일을 저장하려는 디렉터리로 이동하여 Expect 스크립트를 실행하고 lcd스크립트의 8번째 줄에 있는 명령을 생략하는 것입니다.

관련 정보