【问题标题】:aws s3 copy file typeaws s3 复制文件类型
【发布时间】:2016-11-27 21:53:56
【问题描述】:

我在 amazon s3 上有一个 SVG 文件。当我运行以下命令下载文件时:

aws s3 cp s3://mybucket/test.svg .

它将它作为二进制文件下载。但是,如果我直接进入控制台并从 GUI 下载,它会正确下载为 text/xml 文件。

任何想法如何使用aws s3 cp 保留文件内容类型?

【问题讨论】:

  • 文件的Content-Encoding是什么,如S3控制台所示?
  • content-engoding 说gzip。有没有办法以原始格式大量下载文件?
  • 从 S3 的角度来看,您正在获得“原始”格式。 S3 永远不会修改内容。这只能通过在最初上传到 S3 之前被 gzip 压缩的文件来解释,Content-Encoding 标头正确设置以表明这一点。当对象被压缩并且Content-Encoding: gzip 存在时,浏览器通常会即时解压缩,但 CLI 不存在。
  • 谢谢!谢谢是有道理的。
  • 你看到的是正确的。更多详情见stackoverflow.com/questions/40972601/…

标签: amazon-web-services amazon-s3 aws-cli


【解决方案1】:

您可以使用cp 命令的content-type 选项(参见完整的doc

aws s3 cp s3://mybucket/test.svg . --content-type 'image/svg+xml'

【讨论】:

  • 那没有解决。它几乎看起来像s3 cp 加密或压缩文件。下载的 svg 的大小要小得多。
  • 更新:看起来我们的 s3 存储桶正在提供 gzip 编码文件。在浏览器中单击 svg 时,它呈现得很好,但下载时会得到 gzip 压缩文件。我猜这不是s3 cp 问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-23
  • 2021-11-27
  • 1970-01-01
  • 1970-01-01
  • 2018-06-01
  • 2016-11-10
相关资源
最近更新 更多