使用 rsync 将文件从远程服务器复制到本地计算机

发布于 2024-12-29 23:31:15 字数 54 浏览 3 评论 0原文

一旦我通过 ssh 进入远程服务器,将所有文件从目录复制到我的计算机上的本地目录的命令是什么?

Once I've ssh'd into my remote server, what would the command be to copy all files from a directory to a local directory on my machine?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

将军与妓 2025-01-05 23:31:15

从本地计算机:

rsync -chavzP --stats [email protected]:/path/to/copy /path/to/local/storage

从具有非标准 ssh 端口的本地计算机:

rsync -chavzP -e "ssh -p $portNumber" [email protected]:/path/to/copy /local/path

或者从远程主机,假设您确实想以这种方式工作并且本地计算机正在侦听 SSH:

rsync -chavzP --stats /path/to/copy [email protected]:/path/to/local/storage

请参阅 man rsync 了解我常用开关的说明。

From your local machine:

rsync -chavzP --stats [email protected]:/path/to/copy /path/to/local/storage

From your local machine with a non standard ssh port:

rsync -chavzP -e "ssh -p $portNumber" [email protected]:/path/to/copy /local/path

Or from the remote host, assuming you really want to work this way and your local machine is listening on SSH:

rsync -chavzP --stats /path/to/copy [email protected]:/path/to/local/storage

See man rsync for an explanation of my usual switches.

千年*琉璃梦 2025-01-05 23:31:15

如果您有 SSH 访问权限,则无需先 SSH 再复制,只需使用 安全复制 (SCP) 从目的地。

scp user@host:/path/file /localpath/file

支持通配符,因此

scp user@host:/path/folder/* /localpath/folder

将复制该文件夹中的所有远程文件。如果复制多个目录。

注意 -r 也会复制所有子文件夹和内容。

If you have SSH access, you don't need to SSH first and then copy, just use Secure Copy (SCP) from the destination.

scp user@host:/path/file /localpath/file

Wild card characters are supported, so

scp user@host:/path/folder/* /localpath/folder

will copy all of the remote files in that folder.If copying more then one directory.

note -r will copy all sub-folders and content too.

甜警司 2025-01-05 23:31:15

我认为最好从本地计算机复制文件,因为如果文件数量或文件大小很大,如果当前的 ssh 会话丢失(管道损坏或其他任何情况),复制过程可能会中断。

如果您已配置 ssh 密钥来连接到远程服务器,则可以使用以下命令:

rsync -avP -e "ssh -i /home/local_user/ssh/key_to_access_remote_server.pem" remote_user@remote_host.ip:/home/remote_user/file.gz /home/local_user/Downloads/

其中 v 选项为 --verbose, a选项是 --archive - 存档模式,P 选项与 --partial 相同 - 保留部分传输的文件,e 选项是 --rsh=COMMAND -指定要使用的远程 shell。

rsync 手册页

I think it is better to copy files from your local computer, because if files number or file size is very big, copying process could be interrupted if your current ssh session would be lost (broken pipe or whatever).

If you have configured ssh key to connect to your remote server, you could use the following command:

rsync -avP -e "ssh -i /home/local_user/ssh/key_to_access_remote_server.pem" remote_user@remote_host.ip:/home/remote_user/file.gz /home/local_user/Downloads/

Where v option is --verbose, a option is --archive - archive mode, P option same as --partial - keep partially transferred files, e option is --rsh=COMMAND - specifying the remote shell to use.

rsync man page

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文