【问题标题】:How to copy Digital Ocean app folder to local machine?如何将 Digital Ocean 应用程序文件夹复制到本地机器?
【发布时间】:2016-04-25 03:17:17
【问题描述】:

我想将我的应用程序文件夹的内容从我的 Digital Ocean droplet 复制到我的本地计算机,因为我不小心从本地计算机上删除了该应用程序并需要它回来。

作为示例,我尝试了以下方法,

scp -r root@104.232.321.32:/PATH-TO-APP 

这给了我以下信息,

usage: scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:]file1 ... [[user@]host2:]file2

如何将应用程序复制到本地计算机?我需要设置一个 scp 工作的目的地,我可以设置什么目的地以便它复制到本地机器,/User/sites 目录?

【问题讨论】:

  • 任何可以写入的本地路径都可以使用...scp -r root@104.232.321.32:/PATH-TO-APP /Users/Chris/local-path

标签: ruby-on-rails macos terminal digital-ocean


【解决方案1】:

试试:

scp -r root@104.232.321.32:/PATH-TO-APP .

这应该将它复制到当前目录。你也可以这样做:

scp -r root@104.232.321.32:/PATH-TO-APP ~/project

将其复制到特定文件夹。

顺便说一下,两个切线观察:

  1. 停止以 root 身份使用您的 DigitalOcean droplet。您应该在 Droplet 上创建自己的用户帐户并设置 SSH 身份验证。
  2. 您应该使用 Git 来保持项目的远程副本和本地副本同步,而不是 scp(当然,这可能是一个奇怪的情况,但请确保您知道)。

【讨论】:

  • 您可能正在寻找~/apps,而不是/apps~/apps$HOME/apps 的别名,意思是“我的主目录中的apps 目录”。 /apps 表示“我的文件系统根目录下的apps 目录”。
  • 谢谢!似乎需要很长时间才能复制, -r 是否意味着它会重复?或者如果它是一个更大的应用程序,通常需要很长时间
  • 如果您查看scp 的手册页(运行man scpgo here),您可以看到-r 标志意味着递归复制子文件夹。 -r 基本上可以被视为大多数 bash 程序的“文件夹标志”:rm -r 删除文件夹,cp -r 复制文件夹等。复制单个文件或文件列表时可以省略该标志.
  • 干杯@StevenPetryk,明白了。它会自己结束吗?还是我必须手动结束它?当我听到递归时,我会想到重复。一些定义可能会说继承的声誉......那么当它完成复制时它会停止吗?还是无限期地继续复制?
  • 完成后会停止。在任何情况下,如果递归导致无限运行时,那是一个错误。 SCP 特别慢,因为它必须在下载时协商每个单独文件的传输。我建议使用tar 将您的项目文件夹压缩(某种程度上)到.tar.gz,然后只传输一个大文件而不是数千个小文件。
猜你喜欢
  • 1970-01-01
  • 2019-01-26
  • 1970-01-01
  • 2016-09-27
  • 1970-01-01
  • 2018-03-19
  • 1970-01-01
  • 2021-03-08
  • 1970-01-01
相关资源
最近更新 更多