问:

如何使用 scp 将文件夹从远程复制到本地主机?

我使用 ssh 登录到我的服务器。 然后,我想将远程文件夹 foo 复制到本地 /home/user/Desktop。

我如何实现这一目标?

答1:

huntsbot.com – 高效赚钱,自由工作

scp -r user@your.server.example.com:/path/to/foo /home/user/Desktop/

通过不包括 foo 末尾的尾随“/”,您将复制目录本身(包括内容),而不仅仅是目录的内容。

从 man scp(见 online manual)

-r 递归复制整个目录

我每次谷歌这个。相关漫画:xkcd.com/1168

我发现了两个很好的知识:-C 标志添加了压缩,-c 标志让您可以传入其他密码类型以获得更好的性能,例如 scp -c blowfish a@b:something . as seen in dimuthu's answer

使用 -p 保留文件修改时间、权限等! scp -pr 用户@...

这个答案缺乏重要的解释。你最终会得到 Desktop/foo 还是会得到 Desktop/allcontentsofFooGohere scp 有时对我来说似乎很奇怪

@Toskan 和 scp -r user@your.server.example.com:/path/to/foo /home/user/Desktop/ 你应该以 Desktop/foo 结束。使用 scp -r user@your.server.example.com:/path/to/foo/. /home/user/Desktop/,您最终会得到 Desktop 中 foo 的内容,并且 foo 的所有子目录散布在 Desktop 下

答2:

huntsbot.com – 程序员副业首选,一站式外包任务、远程工作、创意产品分享订阅平台。

要使用 scp 的全部功能,您需要执行以下步骤:

公钥授权 创建 SSH 别名

然后,例如,如果你有这个 ~/.ssh/config:

Host testUser testuserHostName test-site.examplePort 22022Host prodUser produserHostName production-site.examplePort 22022

您将避免输入密码并简化 scp 语法,如下所示:

scp -r prod:/path/foo /home/user/Desktop   # copy to local
scp -r prod:/path/foo test:/tmp            # copy from remote prod to remote test

此外,您将能够使用远程路径完成:

scp test:/var/log/  # press tab twice
Display all 151 possibilities? (y or n)

要启用远程 bash-completion,您需要在 和 主机上都有 bash-shell,并且 bash-completion 正常工作。有关更多信息,请参阅相关问题:

How to enable autocompletion for remote paths when using scp? SCP filename tab completion

不知道配置文件,这太棒了!

制表符补全是废话,对我来说只是从本地主机完成。

@b.long 问题是“如何将远程文件夹 foo 复制到本地桌面”。我的回答是“scp -r prod:/path/foo /home/user/Desktop”。希望你能看到关系。

@Bernhard 对我来说很明显,因为我使用的是 bash-shell。谢谢你指点我!答案已更新。

@Alexander Yancharuk:感谢您的回答,这比仅涵盖语法更详细。

答3:

打造属于自己的副业,开启自由职业之旅,从huntsbot.com开始!

将所有内容从本地位置复制到远程位置(上传)

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 PortNumber。 (点) - 它表示当前工作目录,因此从服务器下载/复制并仅粘贴到此处。

注意:有时自定义端口会因为防火墙不允许端口而无法使用,因此请确保防火墙允许自定义端口进行传入和传出连接

似乎(至少在 Raspbian Jessie 和 Ubuntu 的最新版本中)scp 使用 -P(大写 P)作为端口,而(奇怪的是)ssh 使用 -p(小写)。

-p 保留用于保留“原始文件的修改时间、访问时间和模式”。因此,如果您将其用于端口,它可能无法正常工作 ;-) 除非您有不同的版本以不同方式使用小写 p。

使用 ssh,是的。不是 scp (我假设)。

如果目录包含空格,我应该放什么?

@hyprfrcb 使用 pwd 获取位置并使用相同

答4:

与HuntsBot一起,探索全球自由职业机会–huntsbot.com

我经常使用的是:

scp -r username@IP:/path/to/server/source/folder/  .

<强>。 (点):表示current folder。所以从服务器复制并粘贴在这里。

IP:可以是像 125.55.41.311 这样的 IP 地址,也可以是像 ns1.mysite.example 这样的主机。

huntsbot.com – 高效赚钱,自由工作

感谢您指出 . 指的是当前目录!

答5:

huntsbot.com – 高效赚钱,自由工作

最好先在远程服务器上压缩目录:

tar czfP backup.tar.gz /path/to/catalog

其次,从远程下载:

scp user@your.server.example.com:/path/to/backup.tar.gz .

最后,解压文件:

tar -xzvf backup.tar.gz

“更好”在很大程度上取决于您正在传输的数据以及通过 ssh 连接到服务器以进行压缩/解压缩的工作量。并且:您可以使用 -C 标志向 scp 添加压缩,例如 scp -C a@b:bigfile .。

这让我想起了@cptloop 的评论! :D xkcd.com/1168

你为我节省了一次额外的谷歌搜索。

答6:

与HuntsBot一起,探索全球自由职业机会–huntsbot.com

典型场景,

scp -r -P port username@ip:/path-to-folder  .

用样本解释,

scp -r -P 27000 abc@10.70.12.12:/tmp/hotel_dump .

在哪里,

port = 27000
username = "abc" , remote server username
path-to-folder = tmp/hotel_dump
. = current local directory

谢谢你的回答。特定 SSH 端口的 -P 对我很有帮助。

答7:

huntsbot.com提供全网独家一站式外包任务、远程工作、创意产品分享与订阅服务!

而且,如果您要从远程位置下载一个地狱般的文件,并且您不太关心安全性,请尝试将 scp 默认加密(Triple-DES)更改为“blowfish”之类的东西。

这将大大减少文件复制时间。

scp -c blowfish -r user@your.server.example.com:/path/to/foo /home/user/Desktop/

根据 this blog post,您可以使用 arcfour 而不是 blowfish 获得更好的性能,但它存在安全漏洞。

答8:

huntsbot.com全球7大洲远程工作机会,探索不一样的工作方式

转到统一工具栏上的文件

https://i.stack.imgur.com/ZD6gk.png

按 Ctrl + l 并写 here_goes_your_user_name@192.168.10.123

192.168.1.103 是您要连接的主机。

这里的一个例子

https://i.stack.imgur.com/TFZ4B.png

答9:

huntsbot.com全球7大洲远程工作机会,探索不一样的工作方式

如果您遇到“身份验证失败太多”,请指定您添加到服务器 ssh 服务器的确切 SSH 密钥:

scp -r -i /path/to/local/key user@remote.tld:/path/to/folder /your/local/target/dir

答10:

HuntsBot周刊–不定时分享成功产品案例,学习他们如何成功建立自己的副业–huntsbot.com

问题是如何使用 scp 命令将文件夹从远程复制到本地。

$ scp -r userRemote@remoteIp:/path/remoteDir /path/localDir

但这是使用 sftp 的更好方法 - SSH 文件传输协议(也称为安全文件传输协议,或 SFTP)是一种网络协议,可通过任何可靠的数据流提供文件访问、文件传输和文件管理。(维基百科)。

$ sftp user_remote@remote_ip

sftp> cd /path/to/remoteDir

sftp> get -r remoteDir

Fetching /path/to/remoteDir to localDir 100% 398 0.4KB/s 00:00

如需有关 sftp 命令的帮助,只需键入 help 或 ?。

答11:

huntsbot.com汇聚了国内外优秀的初创产品创意,可按收入、分类等筛选,希望这些产品与实践经验能给您带来灵感。

我不知道为什么,但我不得不在 source server directive 之前使用本地文件夹。让它发挥作用

scp -r . root@888.888.888.888:/usr/share/nginx/www/example.org/

保持自己快人一步,享受全网独家提供的一站式外包任务、远程工作、创意产品订阅服务–huntsbot.com

假设用户有权限,你可以在不使用 root@ 的情况下做一个绝对路径吗

原文链接:https://www.huntsbot.com/qa/nb62/how-do-i-copy-a-folder-from-remote-to-local-using-scp?lang=zh_CN&from=csdn

huntsbot.com – 高效赚钱,自由工作

如何使用 scp 将文件夹从远程复制到本地?相关推荐

  1. shell从服务器复制文件夹,关于shell:如何使用scp将文件夹从远程复制到本地?...

    如何使用scp将文件夹从远程复制到本地主机? 我使用ssh登录我的服务器.然后,我想把远程文件夹foo复制到本地/home/user/Desktop. 如何做到这一点? 操作的问题是,当ssh连接到远 ...

  2. linux远程建立目录,linux远程创建文件夹 linux 远程复制文件及文件夹

    linuxscp远程拷贝文件及文件夹,需要的朋友可以参考下 1.拷贝本机/home/administrator/test整个目录至远程主机192.168.1.100的/root目录下 复制代码代码如下 ...

  3. scp 拷贝文件夹到远程服务器被拒绝ssh: connect to host xxx.xxx.xxx.xxx port xxxxx: Connection refused

    1. 报错log如下: 2. 解决办法: a. 首先确认远程服务器有安装ssh服务器: 没有安装的话:安装命令如下: 客户端 # apt-get install ssh 如果安装失败,则使用下面命令进 ...

  4. linux scp 过滤文件夹,linux中使用scp远程拷贝文件及文件夹

    linux中使用scp远程拷贝文件及文件夹 linux scp远程拷贝文件及文件夹,需要的朋友可以参考下 1.拷贝本机/home/wtf/test整个目录至远程主机192.168.100.1的/roo ...

  5. 怎么复制远程服务器上的文件夹,Linux系统复制文件/文件夹到远程服务器

    从一个服务器复制文件到另一个服务器,或者从本地到远程复制是 Linux 管理员的日常任务之一. 我觉得不会有人不同意,因为无论在哪里这都是你的日常操作之一.有很多办法都能处理这个任务,我们试着加以概括 ...

  6. PHP 文件夹操作「复制、删除、查看大小」递归实现

    PHP虽然提供了 filesize.copy.unlink 等文件操作的函数,但是没有提供 dirsize.copydir.rmdirs 等文件夹操作的函数(rmdir也只能删除空目录).所以只能手动 ...

  7. 文件夹怎么进行复制粘贴?可以快捷复制文件夹的软件

    近来工作中我遇到一个难题:怎么才能快速对文件夹进行复制及粘贴呢?工作中很多内容我都是存储在文件夹中,打开工作中常用的文件夹,里面存储了有文档.图片.记事本等,每一种格式的内容对工作都非常重要. 平常工 ...

  8. 批量复制文件夹,不复制内容

    有时候我们需要处理的储存数据量较大,且需要分类的时候,我们会建立很多文件夹:假如我们出于工作需要将其复制出一份,要求同名,且为空文件夹:这时候我们就需要只复制文件夹,不复制内容.那么,到底怎样只复制文 ...

  9. linux scp移动文件夹,linux scp远程拷贝文件及文件夹

    [http://www.jb51.net/LINUXjishu/73131.html] 1.拷贝本机/home/administrator/test整个目录至远程主机192.168.1.100的/ro ...

最新文章

  1. JAVA用最简单的方法来构建一个高可用的服务端,提升系统可用性
  2. R语言ggplot2可视化使用lwd和flatten参数调整箱图(boxplot)线条的粗细:中位线和其他线条整体粗细比例更协调
  3. 字符串转bigdecimal类型_BigDecimal你会用吗?
  4. GetFileAttributesEx读取文件相应属性
  5. Java核心(三)并发中的线程同步与锁
  6. Bootstrap mouseover 下拉菜单 Enable Hover for Bootstrap Nav Dropdowns
  7. 想知道你未来宝宝长什么样吗?
  8. 【Antlr】Antlr 资料 学习 网站
  9. Papervision3D对象
  10. 工作工资不高,很普通的一个我
  11. IT人母亲的美国之行(3)
  12. PHP创始人:开源与商业软件是竞合关系(转)
  13. HP笔记本电源开关灯常亮,不能开机的处理
  14. 上dj是什么意思_这个世界上根本没有迪迦奥特曼什么梗?抖音迪迦奥特曼的梗什么意思...
  15. 【复盘1】政治+数学+英语+专业课
  16. CSS用flex布局两端对齐,列不满左对齐
  17. storm-tuple(1)
  18. 微信小程序:打开设置(权限)页面
  19. windows核心宝藏
  20. 2023年上半年数据库系统工程师上午真题及答案解析

热门文章

  1. 边云协同的优点_关于边缘计算和边云协同,看这一篇就够了
  2. 5410 ACM 杭电 01+完全背包
  3. [telink sig mesh] 周期Publish
  4. 3.4 网页开发工具
  5. WebGL--vue+openlayers实现覆盖物+popup
  6. 数据结构——王卓老师
  7. 绝了,项目内部源码资源被爆出!网友:请收下我的膝盖!
  8. 获取最新、最全的小红书地理位置签到数据。
  9. 面试技巧、专面、HR面、群面
  10. uniapp尺寸适配的一些记录