如何使用scp将文件夹从远程主机复制到本地主机?
我使用ssh登录到我的服务器。然后,我想将远程文件夹foo复制到local/home/user/Desktop。
我如何做到这一点?
如何使用scp将文件夹从远程主机复制到本地主机?
我使用ssh登录到我的服务器。然后,我想将远程文件夹foo复制到local/home/user/Desktop。
我如何做到这一点?
当前回答
对于Windows操作系统,我们使用了此命令。
pscp -r -P 22 hostname@IP:/path/to/Downloads ./
其他回答
将所有本地位置复制到远程位置(上载)
scp -r /path/from/local username@hostname:/path/to/remote
将所有远程位置复制到本地位置(下载)
scp -r username@hostname:/path/from/remote /path/to/local
自定义端口,其中xxxx是自定义端口号
scp -r -P xxxx username@hostname:/path/from/remote /path/to/local
在当前目录上从远程复制到本地
scp -r username@hostname:/path/from/remote .
帮助:
-r递归复制所有目录和文件始终使用/中的完整位置,通过pwd获取完整位置/路径scp将替换所有现有文件主机名将是主机名或IP地址如果需要自定义端口(除了端口22),请使用-P端口号.(dot)-表示当前工作目录,因此只能从服务器下载/复制并粘贴到此处。
注意:有时由于防火墙中不允许该端口,自定义端口无法工作,因此请确保防火墙中允许自定义端口用于传入和传出连接
对于Windows操作系统,我们使用了此命令。
pscp -r -P 22 hostname@IP:/path/to/Downloads ./
如果遇到“太多身份验证失败”,请指定添加到服务器SSH服务器的确切SSH密钥:
scp -r -i /path/to/local/key user@remote.tld:/path/to/folder /your/local/target/dir
scp -r user@your.server.example.com:/path/to/foo /home/user/Desktop/
通过在foo结尾不包含尾随的“/”,您将复制目录本身(包括内容),而不仅仅是目录的内容。
来自man scp(参见在线手册)
-r递归复制整个目录
问题是如何使用scp命令将文件夹从远程复制到本地。
$scp-ruserRemote@remoteIp:/path/remoteDir/path/localDir
但这里有一个更好的方法来使用sftp-SSH文件传输协议(也称为安全文件传输协议,或sftp)是一种网络协议,通过任何可靠的数据流提供文件访问、文件传输和文件管理。(维基百科)。
美元/平方英尺user_remote@remote_ip
sftp>cd/path/to/remoteDir
sftp>获取-r remoteDir
正在将/path/to/remoteDir提取到localDir 100%398 0.4KB/s 00:00
有关sftp命令的帮助,只需键入help或?。