mc head
语法
mc head 命令显示对象的前 n 行, 其中 n 是传递给该命令的参数。
mc head 不会对对象内容执行任何转换或格式化来提升可读性。 你也可以将 mc head 用于本地文件系统,以获得与 head 命令行工具类似的结果。
以下命令返回 myminio MinIO 部署中 mydata 存储桶内某个对象的前 10 行:
mc head myminio/mydata/myobject.txt
该命令的语法如下:
mc [GLOBALFLAGS] head \
[--lines int] \
[--rewind "string"] \
[--version-id "string"] \
[--enc-c "string"] \
ALIAS [ALIAS ...]
- 方括号
[]表示可选参数。 - 同一行中的参数彼此相互依赖。
- 使用管道符
|分隔的参数彼此互斥。
请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。
参数
ALIAS
mc-cmd
Required
要输出的一个或多个对象。
对于 MinIO 上的对象,请指定 alias 和该对象的完整路径 (例如存储桶和对象路径)。例如:
mc head play/mybucket/object.txt
你可以在同一个或不同的 MinIO 部署上指定多个对象。例如:
mc head ~/mydata/object.txt myminio/mydata/object.txt
对于本地文件系统上的对象,请指定该对象的完整路径。 例如:
mc head ~/mydata/object.txt
--lines, n
mc-cmd
Optional
要输出的行数。
默认为 10。
--enc-c
mc-cmd
Optional
使用客户端管理的密钥,通过服务端 SSE-C 加密 对对象进行加密或解密。
该参数接受格式为 KEY=VALUE 的键值对。
| 对象的完整路径,格式为 你也可以只指定顶层路径,以便对该路径下的所有操作使用同一个加密密钥。 |
| 指定用于 SSE-C 加密的密钥,可以是 32 字节 RawBase64 编码密钥, 也可以是 64 字节十六进制编码密钥。 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"
说明
MinIO 强烈不建议在生产负载中使用 SSE-C 加密。 请改用 --enc-kms 参数启用 SSE-KMS,或使用 --enc-s3 参数启用 SSE-S3。
--rewind
mc-cmd
Optional
指示 mc head 仅对指定时间点存在的对象版本执行操作。
- 如需回溯到过去的特定日期,请将该日期指定为 ISO8601 格式的时间戳。 例如:
--rewind "2020.03.24T10:00"。 - 如需按时间长度回溯,请将该时长指定为
#d#hh#mm#ss格式的字符串。 例如:--rewind "1d2hh3mm4ss"。
--rewind 要求指定的 ALIAS 指向支持 存储桶版本控制 的 S3 兼容服务。对于 MinIO 部署, 请使用 mc version 启用或禁用存储桶版本控制。
--version-id, vid
mc-cmd
Optional
指示 mc head 仅对指定的对象版本执行操作。
--version-id 要求指定的 ALIAS 指向支持 存储桶版本控制 的 S3 兼容服务。对于 MinIO 部署, 请使用 mc version 启用或禁用存储桶版本控制。
全局标志
此命令支持 全局标志 中的任意选项。
示例
查看对象的部分内容
使用 mc head 返回对象的前 10 行:
mc head ALIAS/PATH
查看对象在某个时间点的部分内容
使用 mc head --rewind 返回对象在过去特定时间点的前 10 行:
mc head ALIAS/PATH --rewind DURATION
- 将
ALIAS替换为 S3 兼容主机的alias。 - 将
PATH替换为该对象在 S3 兼容主机上的路径。 - 将
DURATION替换为过去的某个时间点, 命令会返回该时间点对应的对象。例如,指定30d可返回当前日期前 30 天的对象版本。
需要版本控制
要使用此功能,mc head 需要启用 存储桶版本控制。 请使用 mc version 在存储桶上启用版本控制。
查看对象指定版本的部分内容
使用 mc head --version-id 返回对象特定版本的前 10 行:
mc head ALIAS/PATH --version-id VERSION
- 将
ALIAS替换为 S3 兼容主机的alias。 - 将
PATH替换为该对象在 S3 兼容主机上的路径。 - 将
VERSION替换为对象版本。 例如,指定30d可返回当前日期前 30 天的对象版本。
需要版本控制
要使用此功能,mc head 需要启用 存储桶版本控制。 请使用 mc version 在存储桶上启用版本控制。
行为
S3 兼容性
mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。
对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。
本页部分内容改编自 MinIO 对象存储文档,© 2020–至今 MinIO, Inc.,依据 CC BY 4.0 授权,由 Silo 项目转换与维护。归属与署名
本页为非官方中文翻译。如与英文原文有出入,以英文原文为准。