文档基于2025-10-10日社区最终版构建     
切换到英文版    进入演示系统    进入交流社区

MinIO Documentation

mc find

语法

Themc find该命令支持在 MinIO 部署中搜索对象。 您也可以使用该命令在文件系统中搜索文件。

以下命令在指定模式中搜索所有匹配的对象mydata桶上的myminioMinIO 部署:

mc find myminio/mydata --name "*.jpg"

该命令具有以下语法:

mc [GLOBALFLAGS] find                    \
                 [--exec "string"]       \
                 [--ignore "string"]     \
                 [--larger "string"]     \
                 [--maxdepth "string"]   \
                 [--metadata "string"]   \
                 [--name "string"]       \
                 [--newer-than "string"] \
                 [--older-than "string"] \
                 [--path "string"]       \
                 [--print "string"]      \
                 [--regex "string"]      \
                 [--smaller "string"]    \
                 [--tags "string"]`      \
                 [--versions]            \
                 [--watch]               \
                 ALIAS
  • Brackets[]表示可选参数。

  • 共享同一行的参数是相互依赖的。

  • 使用竖线分隔的参数|操作符是互斥的。

将示例复制到文本编辑器中,根据需要修改,然后在终端/Shell中运行命令。

参数

ALIAS
必需

对于 MinIO 或 S3 兼容主机上的对象,请指定别名以及要搜索的完整路径(例如存储桶和前缀)。 例如:

mc find play/mydata/

对于文件系统上的对象,请指定要搜索的完整路径。 例如:

mc find ~/mydata/

发行mc find ALIAS不带任何其他参数时返回一个列表全部指定路径下的对象或文件,类似于mc ls.

--exec
可选

为每个返回的对象生成一个外部进程mc find支持替换格式化输出的。

--ignore
可选

排除名称与指定模式匹配的对象通配符模式.

--larger
可选

匹配所有大于指定大小的对象单位.

--maxdepth
可选

限制目录导航到指定深度。

--metadata
可选

版本 mc 中的新功能:RELEASE.2023-04-12T02-21-51Z

仅适用于 MinIO 部署。

返回具有与指定元数据匹配的对象key=value使用格式--metadata="KEY=value".

您可以传递一个值为空的键。 在这种情况下,mc find匹配那些没有元数据键或元数据键值为空的对象。

您可以使用该标志多次匹配对象的附加元数据键。 要返回,对象必须具有与所有元数据键匹配的值。

--name
可选

返回名称与指定条件匹配的对象通配符模式.

--newer-than
可选

镜像对象的时间晚于指定的天数。 指定一个字符串在#d#hh#mm#ss格式。 例如:--older-than 1d2hh3mm4ss

Changed in version RELEASE.2025-02-04T04-57-50Z:时间也可以使用绝对时间指定YYYY-MM-DD HH:MM:SS TMZ格式。 例如,mc find --newer-than="2025-01-22 09:57:00 CET" minioalias/mybucket.

--older-than
可选

镜像早于指定时间限制的对象。指定一个字符串在#d#hh#mm#ss格式。 例如:--older-than 1d2hh3mm4ss

Changed in version RELEASE.2025-02-04T04-57-50Z:时间也可以使用绝对时间指定YYYY-MM-DD HH:MM:SS TMZ格式。 例如,mc find --newer-than="2025-01-22 09:57:00 CET" minioalias/mybucket.

默认值为0(所有对象)。

--path
可选

返回名称与指定内容匹配的目录内容通配符模式.

--print
可选

将结果打印到STDOUT支持替换格式化输出的。

--regex
可选

返回名称与指定PCRE正则表达式模式匹配的对象或目录内容。

--tags
可选

版本 mc 中的新功能:RELEASE.2023-04-12T02-21-51Z

仅适用于 MinIO 部署。

返回具有匹配指定标签的对象RE2 正则表达式模式使用格式--tag="KEY=regexValue".

您可以传递一个值为空的键。 在这种情况下,mc find匹配那些没有元数据键或元数据键值为空的对象。

您可以使用该标志多次来匹配具有附加标签的对象。 要返回,对象必须具有所有标签的匹配值。

--更小
可选

匹配所有小于指定尺寸的对象单位.

--versions
可选

在结果中包含所有对象版本。

--watch
可选

持续监控ALIAS并返回任何符合指定条件的新对象。

全局标志

此命令支持任何全局标志.

示例

在存储桶中查找特定对象

mc find ALIAS/PATH --name NAME
  • 替换ALIAS随着aliasS3兼容主机的

  • 替换PATH使用指向 S3 兼容主机上存储桶的路径。省略路径将从 S3 主机的根目录开始搜索。

  • 替换NAME与该对象。

查找存储桶中具有文件扩展名的对象

mc find ALIAS/PATH --name *.EXTENSION
  • 替换ALIAS随着aliasS3兼容主机的

  • 替换PATH使用指向 S3 兼容主机上存储桶的路径。

  • 替换EXTENSION对象的文件扩展名。

查找所有匹配文件并复制到 S3 服务

使用mc find随着--exec在本地文件系统上查找文件并将其传递给某个操作的选项mc用于 进一步处理的命令。以下示例使用mc cp复制 输出mc find到兼容 S3 的主机。

mc find FILEPATH --name "*.EXTENSION" --exec "mc cp {} ALIAS/PATH"
  • 替换FILEPATH包含要搜索目录的完整文件路径。

  • 替换EXTENSION对象的文件扩展名。

  • 替换ALIAS随着aliasS3兼容主机的

  • 替换PATH使用指向 S3 兼容主机上存储桶的路径。

要持续监视指定目录并复制新对象, 请包含--watch论点:

mc find --watch FILEPATH --name "*.EXTENSION" --exec "mc cp {} ALIAS/PATH"

查找具有匹配标签的对象

Note

标签匹配功能仅适用于 MinIO 部署环境。

mc find --tags="key=v*" ALIAS/BUCKET/
  • 替换key使用要匹配的标签键的名称。

  • 替换v*使用 RE2 正则表达式进行评估。

  • 替换ALIAS随着aliasMinIO 部署的。

  • 替换BUCKET使用要搜索的存储桶或前缀。

您可以添加额外的--tags="key=RegExpression"要匹配的标志。 匹配的对象必须匹配所有包含的标签。

查找具有匹配元数据的对象

Note

元数据匹配功能仅适用于 MinIO 部署环境。

mc find --json --metadata="content-type=text/csv" ALIAS/BUCKET/
  • 替换content-type=text/csv使用元数据字段和值的键值对进行匹配。

  • 替换ALIAS随着aliasMinIO 部署的。

  • 替换BUCKET使用要搜索的存储桶或前缀。

您可以添加额外的--tags="metadata=value"要匹配的标志。 匹配的对象必须匹配所有包含的元数据字段。

行为

计量单位

Themc find --smallermc find --largerflags 接受以下不区分大小写的后缀来表示指定大小值的单位:

后缀

单元尺寸

k

KB (Kilobyte, 1000 Bytes)

m

MB (兆字节,1000千字节)

g

GB (Gigabyte,1000 Megabytes)

t

TB (Terabyte, 1000 Gigabytes)

ki

KiB (Kibibyte, 1024 字节)

mi

MiB (Mebibyte, 1024 Kibibytes)

gi

GiB (Gibibyte, 1024 Mebibytes)

ti

TiB (Tebibyte, 1024 Gibibytes)

省略后缀默认为bytes.

替换格式

Themc find --execmc find --print命令 支持字符串替换,对以下关键字有特殊解释。

以下关键字同时支持文件系统和S3服务目标:

  • {}- 完整路径的替代方案。

  • {base}- 路径 basename 的替代方法。

  • {dir}- 路径 dirname 的替代方法。

  • {size}- 路径对象大小的替代方案。

  • {time}- 替代路径中对象的修改时间。

以下关键字仅适用于 S3 服务目标:

  • {url}- 路径可共享 URL 的替代方案。

S3 Compatibility

Themc命令行工具专为兼容 AWS S3 API 而构建,并已通过 MinIO 和 AWS S3 测试,确保功能与行为符合预期。

MinIO 不提供对其他 S3 兼容服务的保证,因为它们的 S3 API 实现方式未知,因此不受支持。尽管mc命令可能按文档所述工作,任何此类使用风险自负。