Мне нужно передать файл между двумя компьютерами, которые не подключены к одной сети. Я получил третий компьютер, который может видеть обе сети через VPN.
С третьего компьютера я могу сделать:
scp root@firstcomputer:./file ./
И завершите перевод следующим предложением:
scp ./file root@secondcomputer:./
Но я не могу сделать это в одну строку, как показано ниже:
scp root@firstcomputer:./file root@secondcomputer:./
Ответ об ошибке
ssh: connect to host secondcomputer port 22: No route to host
lost connection
Я понимаю, что это, вероятно, потому, что первый компьютер не может видеть второй компьютер. Можно ли дать SCP параметр, который касается того факта, что машина, на которой запущена программа SCP, единственная, кто может видеть оба компьютера?
Кстати, третий компьютер - это Mac с Lion, а первый и второй работают под управлением Debian.
источник
Вы можете попробовать это:
Это скопирует файл в каталог / tmp на третьем компьютере, и в случае успеха он скопирует этот файл на дополнительный компьютер, а затем очистит себя. Поскольку вы используете оператор &&, каждая команда будет выполняться только в том случае, если предыдущая команда была успешной.
источник