Filter 命令
目录
您可以使用该标志来确定命令的范围。筛选时,
命令仅包含与您指定的模式匹配的条目。--filter
使用过滤器
该标志需要一个由运算符分隔的键值对。--filter
$ docker COMMAND --filter "KEY=VALUE"
键表示要筛选的字段。
该值是指定字段必须匹配的模式。
运算符可以是 equals () 或不等于 ()。=
!=
例如,该命令会过滤
命令的输出以仅打印镜像。docker images --filter reference=alpine
docker images
alpine
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 20.04 33a5cc25d22c 36 minutes ago 101MB
ubuntu 18.04 152dc042452c 36 minutes ago 88.1MB
alpine 3.16 a8cbb8c69ee7 40 minutes ago 8.67MB
alpine latest 7144f7bab3d4 40 minutes ago 11.7MB
busybox uclibc 3e516f71d880 48 minutes ago 2.4MB
busybox glibc 7338d0c72c65 48 minutes ago 6.09MB
$ docker images --filter reference=alpine
REPOSITORY TAG IMAGE ID CREATED SIZE
alpine 3.16 a8cbb8c69ee7 40 minutes ago 8.67MB
alpine latest 7144f7bab3d4 40 minutes ago 11.7MB
可用字段(在本例中)取决于您运行的命令。
某些筛选器需要完全匹配。其他 Deal 处理部分匹配。一些过滤器
允许您使用正则表达式。reference
请参阅每个命令的 CLI 参考说明以了解 关于每个命令支持的筛选功能。
组合过滤器
您可以通过传递多个标志来组合多个过滤器。这
以下示例显示如何打印与 or 匹配的所有镜像 - 一个逻辑 .--filter
alpine:latest
busybox
OR
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 20.04 33a5cc25d22c 2 hours ago 101MB
ubuntu 18.04 152dc042452c 2 hours ago 88.1MB
alpine 3.16 a8cbb8c69ee7 2 hours ago 8.67MB
alpine latest 7144f7bab3d4 2 hours ago 11.7MB
busybox uclibc 3e516f71d880 2 hours ago 2.4MB
busybox glibc 7338d0c72c65 2 hours ago 6.09MB
$ docker images --filter reference=alpine:latest --filter=reference=busybox
REPOSITORY TAG IMAGE ID CREATED SIZE
alpine latest 7144f7bab3d4 2 hours ago 11.7MB
busybox uclibc 3e516f71d880 2 hours ago 2.4MB
busybox glibc 7338d0c72c65 2 hours ago 6.09MB
多个无效过滤器
某些命令支持在标签上否定过滤器。
否定的筛选器仅考虑与指定模式不匹配的结果。
以下命令将删除所有未标记的容器。foo
$ docker container prune --filter "label!=foo"
将多个无效标签筛选器组合在一起存在一个问题。多重否定
过滤器创建一个负约束 - 一个逻辑 .以下内容
命令会修剪除同时标记为 和 的容器之外的所有容器。
标记为 或 但不能标记为两者的容器将被修剪。AND
foo
bar
foo
bar
$ docker container prune --filter "label!=foo" --filter "label!=bar"
参考
有关筛选命令的更多信息,请参阅 CLI 参考
支持该标志的命令的说明:--filter
docker config ls
docker container prune
docker image prune
docker image ls
docker network ls
docker network prune
docker node ls
docker node ps
docker plugin ls
docker container ls
docker search
docker secret ls
docker service ls
docker service ps
docker stack ps
docker system prune
docker volume ls
docker volume prune