Azure Sphere CLI 交互模式 (预览版)

Azure Sphere CLI 支持交互式模式,该模式提供用于运行 Azure Sphere CLI 命令的交互式环境,这是学习 CLI 功能、命令结构和输出格式的新用户的理想选择。 可以使用 PowerShell、Windows 命令提示符或 Bash shell 在命令行界面中使用 azsphere interactive 命令启动交互模式。 命令提示符更改为 azsphere>> ,以指示你现在正在交互式 shell 中运行命令。

Azure Sphere 交互模式

重要

此功能以预览版提供。 将来的版本中可能会更改或删除它。

配置

交互模式可以选择显示命令说明、参数说明和命令示例。

选项 描述
F1 打开或关闭说明和示例。
F2 打开或关闭参数默认值的显示。
F3 切换某些关键手势的显示。
[Ctrl+D] 退出交互模式。

Azure Sphere 交互模式 F1

设置范围

交互式模式允许将命令范围限定为特定的命令组。 如果只想使用 device certificate 命令,可以使用以下命令设置正确的范围,这样就不必使用所有后续命令进行键入 device certificate

例如,将范围设置为 %%device certificate时:

azsphere>> %%device certificate
defaulting: device
defaulting: certificate
azsphere device certificate>>

若要删除范围,请输入 , $ %% .. 并删除所有范围,请输入 %%

例子

在键入命令时,交互模式会根据上下文列出某些命令的示例。 如果命令的示例太多,无法容纳在终端窗口上,则可以通过滚动浏览示例窗格,分别使用 CTRL+Y 和 CTRL+N 分别表示“向上”和“向下”。来查看所有示例。

交互模式提供了多种创建和运行命令的方法。 示例编号在示例窗格中指示。 可以在示例窗格中选择要查看的特定一个。 例如:

Azure Sphere 交互模式:多种方式

自动完成

交互模式显示输入的命令的结果。 它提供自动完成下拉列表框、自动缓存的建议和动态文档,包括如何使用每个命令的示例。 、、、 --style--none--type--device-group--device--enable-rt-core-debugging--debug-mode--force--manual-start--full--os-feed--targeted-scan--tenant--product--role--state--temporary--user 参数支持--application-update参数值完成。

Azure Sphere 交互模式:自动完成

常用命令

交互模式跟踪以前键入的命令和最常用的命令。 在命令提示符界面中键入初始字符时,将显示命令。

退出代码

选项 $ 允许查看上次运行的命令的退出代码,以验证它是否正常运行。 例如:

azsphere>> $
Success: 0

交互模式之外的命令

Azure Sphere CLI 交互模式允许用户在 Azure Sphere CLI 外部运行命令,而无需通过在 #[command] 命令行界面中使用 退出交互模式。 例如:

azsphere>> #git --version
git version 2.28.0.windows.1

查询上一个命令

可以对运行的最后一个命令的结果运行 JMESPath 查询,该命令使用 ?? 后跟 JMESPath 查询。 例如,列出所有产品后,可以运行查询以仅列出产品名称。

azsphere>> azsphere product list
 ------------------------------------ ------------------------------------ --------------- --------------------
 Id                                   TenantId                             Name            Description
 ==============================================================================================================
 a2cd64be-adc2-4bfd-8f34-7d8c90293893 143adbc9-1bf0-4be2-84a2-084a331d81cb MyFridgeProduct None
 ------------------------------------ ------------------------------------ --------------- --------------------
 e5fe65f7-0df5-481e-9f4c-44b1a00d2d60 143adbc9-1bf0-4be2-84a2-084a331d81cb CoffeeMaker     None
 ------------------------------------ ------------------------------------ --------------- --------------------

jmespath 查询的输出将为:

azsphere>> ??"[].{Productname:name}"
[
  {
    "Productname": "MyFridgeProduct"
  },
  {
    "Productname": "CoffeeMaker"
  }
]