¿Cómo transferir un archivo a una máquina remota a través de SSH?

14

Básicamente, me gustaría canalizar un wgetcomando a un archivo en un servidor remoto a través de SSH. ¿Cómo puedo hacer esto? Sé que podría simplemente sshingresar al servidor y hacer que descargue el archivo, pero prefiero usar la máquina local para descargarlo y enviarlo.

Naftuli Kay
fuente

Respuestas:

24

Entonces, ha iniciado sesión en una máquina myclienty tiene sshacceso a otra máquina myserver. Quiere descargar un archivo a través de HTTP desde un servidor remoto www.example.coma myclientpero los datos tienen que ser guardado en myserver. Esto debería hacerlo:

wget -O - http://www.example.com/whatever | ssh myserver 'cat >/path/to/remote/destination'

Alternativamente, puede montar el myserversistema de archivos de 's sobre SSH con sshfs . Esto puede ser demasiado complicado para una necesidad única, pero conveniente si hace este tipo de cosas con frecuencia.

mkdir ~/myserver
sshfs myserver:/ ~/myserver
wget -O ~/myserver/path/to/remote/destination http://www.example.com/whatever
Gilles 'SO- deja de ser malvado'
fuente
Sí, eso es exactamente lo que quería hacer. Necesitaba ejecutar la descarga HTTP real en A, pero copiar el archivo a través de SSH Bsin almacenar realmente el archivo A. ¡Ganar!
Naftuli Kay