
命令参考
目标选择器
目标选择器用于选出命令作用的玩家或实体。以 @ 和一个字母开头,可以用方括号中的筛选条件缩小范围。
| 选择器 | @p, @a, @r, @s, @e, @n |
| 选择器参数 | 21 |
| 筛选语法 | @e[name=value,name=value].=和,前后允许有空格。所有过滤器都必须匹配。 |
| 取反 | 在值前加!可取反条件,例如type=!minecraft:player。适用于 name、gamemode、team、type、tag、nbt 和 predicate。 |
| 范围 | 5(精确值),3..(至少),..10(至多),3..10(介于之间)。较小的数字写在前面。 |
| 其他目标 | 可以输入玩家名称(最多16个字符)或实体UUID来代替选择器。 |
| 被移除的实体 | @e和@n会跳过已死亡或已被移除的实体。其他所有实体都会计入,包括物品、箭和矿车。 |
| 搜索区域 | 通常会搜索每个维度。使用distance、x、y、z、dx、dy或dz会把搜索限制在执行命令所在的维度。 |
| 仅限一个目标 | 只接受单个目标的命令会拒绝可能返回多个目标的选择器。在@a或@e中加入limit=1即可在此使用。 |
| 仅限玩家 | 接受玩家的命令会拒绝@e和@n,除非选择器限定为玩家,例如使用type=minecraft:player。 |
| 权限 | 使用选择器需要权限。没有它时,游戏会回应“不能使用选择器”。 |
| @p | 最近的玩家 | 最近的优先 | 1 | /tp @p 0 64 0 |
| @a | 所有玩家 | 无固定顺序 | 无 | /gamemode creative @a |
| @r | 随机玩家 | 随机 | 1 | /give @r minecraft:diamond 1 |
| @s | 执行命令的实体 | 未使用 | 1 | /tp @s ~ ~10 ~ |
| @e | 所有存活的实体 | 无固定顺序 | 无 | /kill @e[type=minecraft:arrow] |
| @n | 最近的存活实体 | 最近的优先 | 1 | /damage @n[type=minecraft:pig] 2 |
| name | 具有此名称的实体 | 文本,含空格时需加引号。一次,或用 ! 多次 | /effect give @a[name=!Steve,name=!Alex] minecraft:speed 30 |
| distance | 与命令位置的距离(以方块计) | 数字或范围,不能为负。一次 | /kill @e[type=minecraft:zombie,distance=..10] |
| level | 玩家按经验等级 | 整数或范围,不能为负。一次。仅限玩家 | /xp add @a[level=30..] 1 levels |
| x | 移动用于测量距离和范围框的基准点 | 数字。一次 | /kill @e[x=0,y=64,z=0,distance=..5] |
| y | 移动用于测量距离和范围框的基准点 | 数字。一次 | /kill @e[x=0,y=64,z=0,distance=..5] |
| z | 移动用于测量距离和范围框的基准点 | 数字。一次 | /kill @e[x=0,y=64,z=0,distance=..5] |
| dx | 接触沿 x 轴延伸到此距离的方框的实体 | 数字,可以为负。一次。省略 dy 和 dz 时按0计 | /kill @e[x=0,y=64,z=0,dx=10,dy=5,dz=10] |
| dy | 接触沿 y 轴延伸到此距离的方框的实体 | 数字,可以为负。一次 | /kill @e[x=0,y=64,z=0,dx=10,dy=5,dz=10] |
| dz | 接触沿 z 轴延伸到此距离的方框的实体 | 数字,可以为负。一次 | /kill @e[x=0,y=64,z=0,dx=10,dy=5,dz=10] |
| x_rotation | 上下视角(pitch) | 数字或范围,单位为度。一次 | /tp @a[x_rotation=-90..-45] ~ ~1 ~ |
| y_rotation | 左右视角(yaw) | 数字或范围,单位为度。一次 | /tp @a[y_rotation=-45..45] ~ ~1 ~ |
| limit | 只保留前若干个结果 | 整数,至少为1。一次。不适用于 @s | /kill @e[type=minecraft:item,limit=5] |
| sort | 应用limit之前结果的顺序 | nearest、furthest、random或arbitrary。一次。不适用于 @s | /kill @e[type=minecraft:cow,sort=furthest,limit=2] |
| gamemode | 玩家按游戏模式 | survival、creative、adventure或spectator。一次,或用 ! 多次。仅限玩家 | /gamemode survival @a[gamemode=!survival,gamemode=!adventure] |
| team | 此队伍中的实体 | 队伍名称。留空表示没有队伍,单独的!表示任意队伍。一次,或用 ! 多次 | /tellraw @a[team=!red,team=!blue] "x" |
| type | 此类型或类型标签的实体 | 实体 ID,或带 # 的标签。一次,或用 ! 或标签多次 | /kill @e[type=!minecraft:player,type=!minecraft:villager] |
| tag | 带有此标签的实体 | 标签名称。留空表示没有标签,单独的!表示任意标签。可以重复 | /kill @e[tag=marked,tag=!safe] |
| nbt | 数据包含这些值的实体 | 花括号中的数据。可以重复,允许 ! | /kill @e[type=minecraft:zombie,nbt={NoAI:1b}] |
| scores | 按计分板分数筛选的实体 | {objective=range,...}。列出的每个分数都必须已设置并且匹配。一次 | /tellraw @a[scores={kills=10..,deaths=..3}] "x" |
| advancements | 玩家按进度 | {id=true or false},或{id={criterion=true}}。一次。仅限玩家 | /tellraw @a[advancements={minecraft:story/mine_stone=true}] "x" |
| predicate | 满足数据包谓词的实体 | 谓词ID。可以重复,允许 ! | /kill @e[predicate=my_pack:is_wet] |
| name, gamemode, team, type | 一个普通值,或任意数量带 ! 的值。!值之后不能跟普通值 |
| 带标签的type | 可以列出多个标签,每个只能出现一次,前提是没有给出普通类型 |
| tag, nbt, predicate | 可以使用任意次数,带不带 ! 均可 |
| distance, level, x, y, z, dx, dy, dz, x_rotation, y_rotation, limit, sort, scores, advancements | 每个选择器仅限一次 |
| limit, sort | 不能用于@s |
| 玩家名称 | 具有该名称的在线玩家 | /kill Steve |
| UUID | 具有该唯一ID的实体 | /kill dd12be42-52a9-4a91-a8a1-11c01849e498 |
/kill @e[type=minecraft:zombie,distance=..10]杀死10格范围内的所有僵尸。
/give @a[gamemode=survival,distance=..20] minecraft:bread 3给予20格方块范围内的每位生存模式玩家3个面包。
/tp @e[type=minecraft:villager,sort=nearest,limit=3] @s将最近的三名村民传送到你身边。
/kill @e[type=minecraft:item,nbt={Item:{id:"minecraft:diamond"}}]移除掉落的钻石。
/tellraw @a[scores={kills=10..},team=!red] {text:"Well done",color:"green"}向击杀数至少为10且不在red队伍中的玩家发送消息。
/kill @e[type=#minecraft:skeletons]杀死 skeletons 类型标签中的所有实体。
/execute as @a at @s run tp @s ~ ~1 ~让每名玩家从所在位置向上移动一格。

