
命令
/data
读取、更改和移除方块实体、实体和命令存储的已存数据(NBT)。
| /data get (block <target>|entity <target>|storage <target>) [<path> [<scale>]] |
| /data merge (block <target>|entity <target>|storage <target>) <nbt> |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> (append|merge|prepend|set) compute (block <computePos>|entity <computeTarget>) (float <provider>|integer <provider>) |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> (append|merge|prepend|set) compute default (float <provider>|integer <provider>) |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> (append|merge|prepend|set) from (block <source>|entity <source>|storage <source>) [<sourcePath>] |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> (append|merge|prepend|set) string (block <source>|entity <source>|storage <source>) [<sourcePath> [<start> [<end>]]] |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> (append|merge|prepend|set) value <value> |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> insert <index> compute (block <computePos>|entity <computeTarget>) (float <provider>|integer <provider>) |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> insert <index> compute default (float <provider>|integer <provider>) |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> insert <index> from (block <source>|entity <source>|storage <source>) [<sourcePath>] |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> insert <index> string (block <source>|entity <source>|storage <source>) [<sourcePath> [<start> [<end>]]] |
| /data modify (block <target>|entity <target>|storage <target>) <targetPath> insert <index> value <value> |
| /data remove (block <target>|entity <target>|storage <target>) <path> |
| 参数 | 值的类型 | 输入内容 |
|---|---|---|
| <target> | 方块位置 | 要读取或更改的内容。block之后是方块位置,entity之后是单个实体,storage之后是带命名空间的ID,如example:config。 |
| <path> | 数据路径 | 数据中某个值的位置,例如 Pos[1] 或 Items[0].id。 |
| <scale> | 小数 | 对于 get:向下取整并返回之前将值乘以的数。 |
| <nbt> | 花括号中的数据 | 对于 merge:写在花括号中的复合标签,例如 {NoAI:1b}。 |
| <targetPath> | 数据路径 | 对于 modify:目标数据中被更改的位置。 |
| <computePos> | 方块位置 | 对于带 block 的 compute 来源:计算所查看的方块位置。 |
| <provider> | 小数提供器 | 对于 compute 来源:要计算的数值提供器,用 ID 或内联写法给出。 |
| <computeTarget> | 目标选择器 | 对于带 entity 的 compute 来源:计算所查看的实体。仅限一个实体。 |
| <source> | 方块位置 | 对于 from 和 string:复制数据的来源。方块位置、单个实体或存储ID。 |
| <sourcePath> | 数据路径 | 来源中要复制的值的位置。不带它时,使用来源的全部数据。 |
| <start> | 整数 | 对于string:要保留的第一个字符的索引。负值从末尾开始计数。 |
| <end> | 整数 | 对于string:文本结束处的索引,不包括该位置。负值从末尾开始计数。 |
| <value> | 数据值 | 对于 value 来源:要使用的数据,例如数字、引号中的文本、列表或复合标签。 |
| <index> | 整数 | 对于 modify insert:值被加入列表中的位置。0为起点。 |
| 权限等级 | 2:管理员、开启作弊的世界、命令方块和函数 |
| 适用于 | 开启作弊的单人游戏和多人游戏服务器。需要权限等级2(游戏管理员):服务器管理员、开启作弊的玩家、命令方块和函数都可以执行。 |
| 结果 | get会报告找到的数据。/execute store 保存的数字:对整个目标为1,对数字为向下取整后的数,对文本为长度,对列表或复合标签为条目数量。带缩放时,结果为数值乘以缩放后向下取整。merge 返回1。 remove 返回被移除的值的数量。modify 返回被修改的值的数量。 |
| 目标 | block 是在已加载位置存储数据的方块,例如箱子或告示牌。entity 是单个实体。storage 是随世界保存的命名数据存储,命令可以自由使用,首次写入时创建。 |
| get | 显示目标的所有数据,或只显示某个路径上的值。带缩放时,路径上的值必须是数字。路径必须恰好指向一个值。 |
| merge | 将给定的复合标签与目标的数据合并,覆盖其中指定的键。如果数据已是这些值,则失败,并提示“没有任何更改”。 |
| remove | 删除该路径上的一个或多个值。如果没有移除任何内容,则失败。 |
| modify set | 用来源值替换目标路径处的值。 |
| modify append和prepend | 将来源值添加到目标路径处列表的末尾或开头。 |
| modify insert | 将来源值添加到目标路径处列表的指定索引位置。 |
| modify merge | 将来源复合标签合并到目标路径上的复合标签中。两者都必须是复合标签。 |
| 来源:value | 使用直接写在命令中的数据。 |
| 来源:from | 从另一个方块、实体或存储复制数据,可以是全部,也可以是来源路径上的值。 |
| 来源:string | 将方块、实体或存储中的值复制为文本。可选的 start 和 end 会截取文本的一部分:start 是要保留的第一个字符,从0开始计数,end 是停止的位置。负数从文本末尾开始计数。只能使用文本和数字值。 |
| 来源:compute | 使用数字提供器的结果,与/compute的计算方式相同:default、带位置的block或带目标的entity,后接integer或float和提供器。 |
| 无法修改玩家 | 玩家数据可以读取,但不能更改。尝试更改它会失败并提示“无法修改玩家数据”。 |
| 失败原因 | 如果该方块不存储数据(“目标方块不是方块实体”),如果路径不存在,或者modify命令没有改变数据,则会失败。 |
/data get entity @s显示你自己的所有数据。
/data get entity @s Pos[1]显示你的高度(Y坐标)并返回向下取整后的值。
/data get block ~ ~-1 ~ Items显示你下方容器中存放的物品。
/data merge entity @e[type=minecraft:zombie,limit=1,sort=nearest] {NoAI:1b}在最近的僵尸上设置NoAI,使其不再自行移动。
/data modify storage example:config counter set value 5在存储example:config中的counter下存储数字5。
/data remove storage example:config counter从存储example:config中删除counter。



