Вам нужно запустить ssh
дважды; один раз для запуска tar
на одном сервере и еще раз для подключения к другому серверу. Соедините их с помощью канала, чтобы вывод tar
шел на другой сервер.
ssh 188.166.177.20 'tar czf - latest' | ssh 226.169.204.155 'cat > latest.tgz'
tar czf -
записывает сжатый архив в стандартный вывод, что означает, что он возвращается на локальный компьютер. Передача этого в удаленный cat
процесс приводит к архиву на другом сервере.
В зависимости от настроек вашей сети, может быть более эффективно запустить ssh
на первом удаленном компьютере, чтобы подключиться непосредственно к другому серверу, вместо того, чтобы сначала вернуть данные на ваш компьютер.
ssh 188.166.177.20 'tar czf - latest | ssh 226.169.204.155 "cat > latest.tgz"'
(Повторно введите имена пользователей при необходимости.)
Вы также можете инвертировать порядок команд ssh
, чтобы избежать необходимости запуска cat
, перенаправив вывод tar
непосредственно в файл назначения на удаленном компьютере.
ssh 226.169.204.155 'ssh 188.166.177.20 "tar czf - latest" > latest.tgz'