mc get
New in version mc: RELEASE.2024-02-24T01-33-20Z
语法
mc get 命令将对象从目标 S3 部署下载到本地文件系统。
与 mc cp 或 mc mirror 相比,mc get 为下载文件提供了更简化的接口。
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
- Required
要下载对象的完整路径,包含 alias、存储桶、prefix(如使用)和对象名。
- --enc-c
- Optional
使用客户端管理的密钥,通过服务端 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- 用于加密对象的 32 字节 RAW Base64 编码数据密钥。
例如:
# RawBase64-Encoded string "mybucket32byteencryptionkeyssec" --enc-c "myminio/mybucket/prefix/object.obj=bXlidWNrZXQzMmJ5dGVlbmNyeXB0aW9ua2V5c3NlYwo"
你可以通过重复该参数来指定多个加密密钥。
也可以指定某个前缀路径,对该路径下所有匹配对象应用加密:
--enc-c "myminio/mybucket/prefix/=bXlidWNrZXQzMmJ5dGVlbmNyeXB0aW9ua2V5c3NlYwo"
Note
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