У меня есть сценарий OpenSSH sftp
, который передает файлы с SFTP-сервера (Solaris) на сервер приложений (Linux). Здесь сценарий заключается в том, что передача происходит из другого места, и одни и те же файлы передаются резервной копией на SFTP-сервер в другое место. Но если какой-либо из переносов завершится неудачно из-за того, что файл недоступен, оставшиеся sftp
команды не будут продолжены. Вместо этого он просто выходит из кода. Ниже приведен сценарий.
export SSHPASS=*******
/usr/local/bin/sshpass -e sftp -oPort=22 -oBatchMode=no -b - [email protected] << !
cd /home/rkwlahtt/Inbound
mget *.*
rm *.*
cd /home/rkwlahtt/Inbound/Adhoc
mget *.*
rm *.*
cd /home/rkwlahtt/Archive/Inbound
mput *.TXT
mput *.txt
cd /home/rkwlahtt/Archive/Adhoc
mput *.xlsx
bye
!
Здесь, в приведенном выше сценарии, когда я пытаюсь mget
из папки /home/rkwlahtt/Inbound
, и если файл не существует, он просто выходит из кода sftp
вместо перехода к следующей команде, которая является cd /home/rkwlahtt/Inbound/Adhoc
и mget
. Такая же ситуация и с mput
тоже.
Это первый раз, когда мы переносим из другого места в одном и том же коде. И это создает проблему в нашей передаче.
Пожалуйста, дайте мне знать, что можно сделать, чтобы решить эту проблему.