你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

az iot hub device-twin

注意

此参考是 Azure CLI (2.30.0 或更高版本) 的 azure-iot 扩展的一部分。 首次运行 az iot hub device-twin 命令时,该扩展将自动安装。 详细了解扩展。

管理 IoT 设备孪生配置。

命令

az iot hub device-twin replace

将设备孪生定义替换为目标 json。

az iot hub device-twin show

获取设备孪生定义。

az iot hub device-twin update

更新设备孪生所需的属性和标记。

az iot hub device-twin replace

将设备孪生定义替换为目标 json。

直接输入 json 或使用文件路径。

az iot hub device-twin replace --device-id
                               --json
                               [--auth-type {key, login}]
                               [--etag]
                               [--hub-name]
                               [--login]
                               [--resource-group]

示例

将设备孪生替换为文件内容。

az iot hub device-twin replace -d {device_id} -n {iothub_name} -j ../mydevicetwin.json

必需参数

--device-id -d

目标设备 ID。

--json -j

要替换为现有孪生的 Json。 提供文件路径或原始 json。

可选参数

--auth-type

指示操作是否应自动派生策略密钥或使用当前的 Azure AD 会话。 You can configure the default using az configure --defaults iothub-data-auth-type=<auth-type-value>.

接受的值: key, login
默认值: key
--etag -e

对应于资源最后状态的 Etag 或实体标记。 如果未提供 etag,则使用值“*”。

--hub-name -n

IoT 中心名称。 如果未提供 --login,则为必需。

--login -l

此命令支持具有执行操作权限的实体连接字符串。 用于避免通过“az login”进行会话登录。 如果提供了实体连接字符串和名称,则连接字符串优先。 如果未提供 --hub-name,则为必需。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

az iot hub device-twin show

获取设备孪生定义。

az iot hub device-twin show --device-id
                            [--auth-type {key, login}]
                            [--hub-name]
                            [--login]
                            [--resource-group]

必需参数

--device-id -d

目标设备 ID。

可选参数

--auth-type

指示操作是否应自动派生策略密钥或使用当前的 Azure AD 会话。 You can configure the default using az configure --defaults iothub-data-auth-type=<auth-type-value>.

接受的值: key, login
默认值: key
--hub-name -n

IoT 中心名称。 如果未提供 --login,则为必需。

--login -l

此命令支持具有执行操作权限的实体连接字符串。 用于避免通过“az login”进行会话登录。 如果提供了实体连接字符串和名称,则连接字符串优先。 如果未提供 --hub-name,则为必需。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

az iot hub device-twin update

更新设备孪生所需的属性和标记。

为 PATCH 行为提供 --desired 或 --tags 参数。 这两个参数都支持内联 json 或 json 内容的文件路径。 泛型更新参数的使用 (即 --set) 将反映 PUT 行为并已弃用。

az iot hub device-twin update --device-id
                              [--add]
                              [--auth-type {key, login}]
                              [--desired]
                              [--etag]
                              [--force-string]
                              [--hub-name]
                              [--login]
                              [--remove]
                              [--resource-group]
                              [--set]
                              [--tags]

示例

修补设备孪生所需的属性。

az iot hub device-twin update -n {iothub_name} -d {device_id} --desired '{"conditions":{"temperature":{"warning":70, "critical":100}}}'

修补设备孪生标记。

az iot hub device-twin update -n {iothub_name} -d {device_id} --tags '{"country": "USA"}'

使用 json 文件内容修补设备孪生标记。

az iot hub device-twin update -n {iothub_name} -d {device_id} --tags /path/to/file

从父“temperature”中删除“critical”所需属性的修补程序

az iot hub device-twin update -n {iothub_name} -d {device_id} --desired '{"condition":{"temperature":{"critical": null}}}'

必需参数

--device-id -d

目标设备 ID。

可选参数

--add

通过指定路径和键值对将对象添加到对象列表。 示例:--add property.listProperty <key=value、string 或 JSON 字符串>。

--auth-type

指示操作是否应自动派生策略密钥或使用当前的 Azure AD 会话。 You can configure the default using az configure --defaults iothub-data-auth-type=<auth-type-value>.

接受的值: key, login
默认值: key
--desired

孪生所需属性。

--etag -e

对应于资源最后状态的 Etag 或实体标记。 如果未提供 etag,则使用值“*”。

--force-string

使用“set”或“add”时,保留字符串文本,而不是尝试转换为 JSON。

--hub-name -n

IoT 中心名称。 如果未提供 --login,则为必需。

--login -l

此命令支持具有执行操作权限的实体连接字符串。 用于避免通过“az login”进行会话登录。 如果提供了实体连接字符串和名称,则连接字符串优先。 如果未提供 --hub-name,则为必需。

--remove

从列表中删除属性或元素。 示例:--remove property.list OR --remove propertyToRemove。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--set

通过指定要设置的属性路径和值来更新对象。 示例:--set property1.property2=。

--tags

孪生标记。