Это возможно:
- выполнить SFTP команду на удаленном компьютере и загрузить файл (
ssh user@machine
,sftp user2@server
,get file
) - затем отправьте загрузку в фоновый режим, чтобы я мог выключить локальный компьютер
command-line
sftp
Praweł
источник
источник
ssh user@B
на моей машине A, а затемsftp user@C
иget some_file.tar.gz
на машине B; Итак, я хотел бы sftp скачать файл с C на B и выключить мой компьютер A, оставив работающими удаленные B и CОтветы:
Попробуйте
screen
на машине B, начните загрузку и затем отсоедините:На машине А:
ssh user@B
На машине Б:
Никогда не пытался, но мог работать.
Изменить: позже войдите в систему и используйте
screen -x
для повторного подключения к текущему сеансу. Затем правильно отключите его, чтобы он не потреблял ресурсы сервера.источник
Если вам нужна функция «отсоединить» экрана, есть программа «dtach», которая предоставляет только эту функцию.
источник
Помещение символа & (амперсанд) за командой запускает его в фоновом режиме. Однако я не знаю, как это сделать после того, как команда уже выполнена, и я не знаю, работает ли это на удаленных машинах.
источник
&
было бы хорошо, но я не знаю ни одного--password
варианта, который я мог бы пройти через командную строку (поэтому я не могу сделать что-то вродеsftp --password=abc user@server:file.tar.gz &
)Есть несколько решений этой проблемы.
Один из вариантов - использовать
screen
команду, однако она кажется немного сложной.Лучший способ, который я нашел, это отправить работу на задний план.
В вашем случае команда будет
источник