Я пытаюсь автоматизировать передачу данных с помощью sftp.
У меня есть хакерский сценарий ожидания, который захватывает файл данных. К сожалению, в процессе передачи файл неожиданно обрезается. Когда я пытался выполнить одну и ту же команду вручную, она всегда передает весь файл.
Первая строка моего ожидаемого сценария:
spawn sftp -o ConnectTimeout=120 username@boxAddress
У меня сложилось впечатление, что установка «-o ConnectTimeout = 120» предотвратит истечение времени ожидания соединения, если оно остановилось менее чем на две минуты.
Что мне нужно сделать, чтобы скрипт загрузил весь файл?
Другой, гораздо менее важный вопрос: я бы предпочел аутентификацию с использованием ключей (но это не обязательно, так как я получаю данные только с внешнего сервера). Я не думаю, что мог бы поставить ключ на этот внешний сервер (потому что он не находится под моим контролем), но (когда я использовал FileZilla для подключения к нему), я заметил, что FileZilla принял ключ от него. Как я могу настроить свой скрипт для запроса и использования этого ключа?