Cómo usar ssh para transferir archivos de la computadora a la computadora local

10

Estoy tratando de sacar algunos archivos de la cuenta de Linux de mi escuela usando ssh. Tengo la conexión para trabajar usando:

scp <school_server>: ~/folder I want ~/where I want to go.

Pero cuando va a transferir carpeta me da el mensaje:

not a regular file

El archivo contiene archivos .java, y quiero la carpeta completa.

zombiedad
fuente

Respuestas:

20

Para copiar recursivamente un directorio completo usando scp, debe agregar el -rmodificador

scp -r remotehost:/path/to/remote/dir/ /path/to/local/dir/

conductor de acero
fuente
1
funcionó perfectamente, gracias por la rápida respuesta
zombiedad
1

Tengo un destino que necesita PEM para conectarse y también tiene un puerto SSH diferente. Esto funcionó para mí como encanto:

Por ejemplo, copiar carpeta (y subcarpetas) de sourceservera targetserver, ejecutar esto ensourceserver

$ rsync -azu -e 'ssh -i ./pem_for_target_server.pem -p <port_number_for_target_server>' /folder/path/on/source [email protected]:/path/on/target/where/you/want/to/copy/folder/on/source/

(En caso de que se permissions are too opende archivo PEM, ejecute lo siguiente: chmod 400 ./pem_for_target_server.pem)

Atul
fuente