首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用AWS将远程文件传输到我的S3桶?

如何使用AWS将远程文件传输到我的S3桶?
EN

Stack Overflow用户
提问于 2016-07-19 14:24:33
回答 2查看 5.4K关注 0票数 0

我试图遵循https://stackoverflow.com/a/18136205/6608952提供的建议,但不确定如何在远程服务器上的.pem文件中共享myAmazonKeypair路径。

代码语言:javascript
复制
scp -i yourAmazonKeypairPath.pem  fileNameThatYouWantToTransfer.php ec2-user@ec2-00-000-000-15.us-west-2.compute.amazonaws.com:

该命令在使用此显示器几分钟后完成:

ssh: connect to host myBucketEndpointName port 22: Connection timed out lost connection

我有几个非常大的文件要传输,我不想把这些文件下载到我的本地计算机,然后再上传到S3桶。

有什么建议吗?

EN

回答 2

Stack Overflow用户

发布于 2016-07-20 07:20:07

没有从远程位置将文件上载到S3的直接方法。即URL

因此,要实现这一点,您有两个选择:

  1. 在本地机器上下载该文件,然后通过AWS控制台AWS 上传该文件。
  2. 下载AWS EC2实例中的文件,并通过AWS 上传到S3。

第一种方法非常简单,不需要太多的解释。

但是对于第二种方法,您需要这样做:

  1. 创建一个EC2实例位于与S3桶相同的区域。或者,如果您已经有一个实例,那么登录/ssh到它。
  2. 下载文件从源到EC2实例。通过wgetcurl,无论哪个舒服。
  3. 安装AWS CLI在EC2实例上。
  4. 创建IAM用户给他许可为您的S3桶。
  5. 配置AWS CLI带着你的证件。
  6. 用S3将文件上传到S3 CP实用程序桶中。
  7. 如果只为此设置实例,则终止实例,
票数 5
EN

Stack Overflow用户

发布于 2022-11-08 18:57:13

使用shell脚本可以轻松地完成此操作。如果您在files.txt中有一个URL列表,那么按照这里:描述的那样做

代码语言:javascript
复制
#!/bin/bash 
input="files.txt" 
while IFS= read -r line do   
  name=$(basename "$line")   
  echo $name   
  wget $line   
  aws s3 mv $name <YOUR_S3_URI> 
done < "$input"

或者是一份文件:

代码语言:javascript
复制
wget <FILE_URL> | aws s3 mv <FILE_NAME> <YOUR_S3_URI> 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38461289

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档