MCTOOLBOX
MC ToolboxMC TOOLBOX

/execute 命令构建器

将修饰符、条件和最终的 run 子命令串联起来,为 Java 版或基岩版构建一个有效的 /execute 命令,然后将其复制到你的世界或数据包中。

生成的命令

/execute as @s run say Hello

此命令链已完成。

命令链

as #1
run #2

/execute 有什么用?

/execute 命令会运行另一个命令,同时改变执行者、执行位置和执行方式,并可选择添加条件。此构建器会按正确顺序链接子命令,让你不再混淆语法。

如何构建 /execute 命令链

  1. 按所需顺序添加子命令。每个子命令都会修改其后所有内容的执行上下文。
  2. 配置每个子命令:实体选择器、坐标、条件和分数比较。
  3. 设置 run 命令:在命令链末尾,使用修改后的上下文执行的最终命令。
  4. 复制组装好的命令链,并粘贴到聊天框或命令方块中。

难点在于语法。一个命令链很容易超过 200 个字符,一个放错位置的关键词就会使整个命令失效。这个构建器通过下拉菜单、输入字段和实时预览消除了这种风险。

/execute 子命令详解

SubcommandWhat it changes
as执行实体 (who)
at位置、旋转和维度
positioned仅位置
rotated仅旋转
facing旋转以面向某个点或实体
align将位置对齐到方块网格
anchored锚点 (眼睛或脚)
in维度
on选择一个实体关系
if / unless条件执行
store将 result 或 success 保存到数据
run要执行的最终命令

修饰符子命令

as 将执行者更改为所选实体,at 将执行位置移动到它们,positioned 和 rotated 直接设置位置和旋转,facing 瞄准一个点或实体,align 对齐到方块网格,anchored 选择眼睛或脚,in 更改维度,on 选择实体关系。

条件子命令

if 和 unless 用于测试条件,仅当条件通过时才继续执行命令链。Java 版可用的测试包括 entity、block、blocks、data、score、loaded、predicate、biome 和 function;Bedrock 版可用的测试包括 entity、block、blocks 和 score。

Store(仅限 Java 版)

store result 和 store success 将最终命令的输出保存到 score、block entity、entity NBT、命令 storage 或 bossbar 中。Bedrock 版没有 store 子命令。

顺序很重要

子命令从左到右执行。当 as 或 at 选中多个 entity 时,命令链的其余部分会为每个 entity 分叉一次,例如 execute as @a run say Hi 会同时为每个玩家运行。

常见示例

让每个玩家说“Hello”:execute as @a run say Hello
在草地上的僵尸处召唤闪电:execute as @e[type=zombie] at @s if block ~ ~-1 ~ minecraft:grass_block run summon lightning_bolt
将玩家生命值存储为 score:execute store result score @s health run data get entity @s Health

常见问题

我的 execute 命令为什么不工作?
命令链必须以 run 子命令或条件结束,run 只能在命令链的末尾出现一次,并且语法在不同版本之间有所变化。如果命令方块显示“unparseable”,请将您的命令链与您版本对应的 Wiki 示例进行比较。

Bedrock 版可以使用 store 吗?
不能。store、on、summon、data、biome、predicate、function 和 loaded 仅限 Java 版。当选中 Bedrock 版时,此构建器会隐藏它们。

如何为每个玩家运行命令?
使用 execute as @a run <command>。as 子命令会选择每个玩家,命令链会为每个选中的 entity 运行一次。

as 和 at 有什么区别?
as 改变执行者(谁执行),at 改变执行位置(在哪里执行)。使用 as 对 entity 进行操作,使用 at 在其位置进行操作,或者两者结合:execute as @e at @s run summon lightning_bolt。

我需要操作员权限吗?
Java 版需要权限等级 2(命令方块或操作员)。Bedrock 版需要世界设置中启用作弊。

Minecraft 中 maxCommandForkCount 的最大值是多少?
max_command_forks gamerule 默认值为 65,536,它限制了单个 /execute 命令可以创建的执行上下文数量。如果 as @e 选择的实体数量超过此限制,命令将失败。max_command_sequence_length 同样默认为 65,536,它限制了命令链或函数中的命令总数。