mc get
新增于 mc 版本: RELEASE.2024-02-24T01-33-20Z
语法
命令 mc get
从目标 S3 部署下载对象到本地文件系统。
mc get
提供了一个比 mc cp
或 mc mirror
更简化的文件下载接口。 mc get
使用单向下载功能,以效率换取了其他命令的功能和复杂性。
以下命令将文件 logo.png
从 s3 源下载到本地文件系统的路径 ~/images/collateral/
。
mc get minio/marketing/logo.png ~/images/collateral
该命令具有以下语法
mc [GLOBALFLAGS] get \
SOURCE \
TARGET \
[--enc-c string] \
[--version-id, --vid value]
方括号
[]
表示可选参数。共用一行的参数是相互依赖的。
使用管道
|
运算符分隔的参数是互斥的。
将示例复制到文本编辑器中,并在终端/shell 中运行命令之前根据需要进行修改。
参数
- SOURCE
- 必需
要下载的 别名、存储桶、前缀(如果使用)和对象的完整路径。
- --enc-c
- 可选
使用服务器端 SSE-C 加密(使用客户端管理的密钥)对对象进行加密或解密。
该参数接受格式为
KEY=VALUE
的键值对KEY
对象的完整路径,例如
alias/bucket/path/object.ext
。您可以仅指定顶级路径,以便对该路径中的所有操作使用单个加密密钥。
VALUE
为 SSE-C 加密指定 32 字节的 RawBase64 编码密钥或 64 字节的十六进制编码密钥。
Raw Base64 编码拒绝
=
填充密钥。省略填充或使用支持 RAW 格式的 Base64 编码器。KEY
- 对象的完整路径,例如alias/bucket/path/object
。VALUE
- 用于加密对象(s)的 32 字节 RAW Base64 编码数据密钥。
例如
# RawBase64-Encoded string "mybucket32byteencryptionkeyssec" --enc-c "myminio/mybucket/prefix/object.obj=bXlidWNrZXQzMmJ5dGVlbmNyeXB0aW9ua2V5c3NlYwo"
您可以通过重复该参数来指定多个加密密钥。
指定前缀的路径,以对该路径下所有匹配的对象应用加密
--enc-c "myminio/mybucket/prefix/=bXlidWNrZXQzMmJ5dGVlbmNyeXB0aW9ua2V5c3NlYwo"
注意
MinIO 强烈建议在生产工作负载中不要使用 SSE-C 加密。请改为使用
--enc-kms
参数的 SSE-KMS 或--enc-s3
参数的 SSE-S3。
全局标志
该命令支持任何 全局标志。
示例
从 MinIO 检索对象到本地文件系统
以下命令从别名 myminio
的存储桶 mybucket
中检索文件 myobject.csv
,并将其放置在本地文件系统的路径 /my/local/folder
上。
mc get myminio/mybucket/myobject.csv /my/local/folder
从 MinIO 检索加密对象
以下命令检索加密文件,并将其放置在本地文件夹路径下。
mc get --enc-c "play/mybucket/object=MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDA" play/mybucket/object path-to/object