共用方式為


Azure 球體 CLI

Azure 球體 SDK 提供 Azure 球體命令列介面 (CLI) 可在 PowerShell、Windows 命令提示字元或 Linux 命令殼層上使用。 Azure 球體 CLI 是一組用來建立及管理 Azure 球體資源的命令。

Azure 球體 CLI 與WindowsLinux淘汰的 Azure 球體傳統 CLI一起安裝,因此您可以存取這兩種介面。 若要使用 Azure 球體 CLI:

  • 在 Windows 上,使用 PowerShell 或標準 Windows 命令提示字元。
  • 在 Linux 上,使用任何命令殼層。

執行 Azure 球體 CLI

您現在可以使用 Windows 命令提示字元或 PowerShell 的命令來執行 Azure 球體 CLI azsphere 。 建議您使用 PowerShell,因為它提供 Windows 命令提示字元中無法使用的索引 標籤完成 功能。

在 Linux 上,您可以從任何命令列介面 (CLI) 執行 Azure 球體 CLI。 安裝期間會顯示通知,讓您將 Azure 球體 CLI 或 Azure 球體傳統 CLI 設定為慣用的預設 CLI 版本。 輸入 Yes 以選擇 Azure 球體 CLI,或輸入 No 以使用 Azure 球體傳統 CLI。 如需詳細資訊,請參閱 安裝 Azure 球體 SDK

注意

Azure 球體 CLI 版本不支援 命令的簡短 表單。 建議您使用 索引標籤完成 功能來檢視可用命令清單。 在 Windows 上,淘汰的 Azure 球體傳統開發人員命令提示 字元快速鍵只能與 Azure 球體傳統 CLI搭配使用。

CLI 輸入功能

本節說明 Azure 球體 CLI 中可用的輸入功能:

命令

Azure 球體 CLI 中的所有命令都是從 azsphere 開始。 例如:

azsphere login
 ---------------------
 Name
 =====================
 bob@contoso.com
 ---------------------

尋找命令

CLI 中的命令會以群組方式組織。 您可以在 Azure 球體傳統 CLI 和 Azure 球體 CLI 中使用 --help ,檢視可用命令和參數的完整說明資訊。

您可以執行命令 azsphere --help ,取得命令的完整清單。

例如:

  • 針對 Azure 球體傳統 CLI 使用, azsphere --helpazsphere -?
  • 針對 Azure 球體 CLI 使用, azsphere --helpazsphere -h

參數

參數的名稱前面有雙連字號 ( --) ,表示連字號後面的字是參數。 使用空格來分隔參數名稱和值。 複合字的參數會在新 CLI 中以連字號 ( ) 分隔。

例如: --component-id--application-update

簡化物件識別

在 Azure 球體 CLI 中,會使用單一參數來識別每個物件類型。 這表示您可以提供適用于該參數的識別碼、名稱、IP 或位置。

例如,您可以在下列命令中使用租使用者識別碼或租使用者名稱:

azsphere device list --tenant 143adbc9-1bf0-4be2-84a2-084a331d81cb

azsphere device list --tenant MyTenant

我們已針對 --device--tenant--product--device-group 參數實作此功能。

例如:

azsphere device-group update --device-group CoffeeMaker/Development
   ------------------------------------ ------------------------------------ ---------- ------------------------------------ --------- ---------------------- ---------------------------------------------------------- -------------------------
   Id                                   TenantId                             OsFeedType ProductId                            Name      Description            UpdatePolicy                                               AllowCrashDumpsCollection
   ===============================================================================================================================================================================================================================================
   7f860cc1-4949-4000-a541-9a988ba4c3cd 143adbc9-1bf0-4be2-84a2-084a331d81cb Retail     6f52bead-700d-4289-bdc2-2f11f774270e Marketing Marketing device group Accept all updates from the Azure Sphere Security Service. False
   ------------------------------------ ------------------------------------ ---------- ------------------------------------ --------- ---------------------- ---------------------------------------------------------- -------------------------

多個值

某些命令會針對單一參數允許多個值,在這種情況下,您可以提供每個值的參數,或一個參數,後面接著一個以空格分隔的值清單。 例如,下列兩個命令相等:

azsphere image-package pack-application --package-directory myDirectory --destination myImagePackage --executables filepath-1 --executables filepath-2
azsphere image-package pack-application --package-directory myDirectory --destination myImagePackage --executables filepath-1 filepath-2

必要和選用參數

當您執行 azsphere <command> <sub-command> --help 適用于該命令的參數清單時,就會顯示該命令。 [必要] 設定會指出參數是否為成功執行命令的必要設定。 所有其他參數都是選用的。

如果缺少必要參數,系統會提示您輸入參數的值。

例如:

azsphere role delete --help

Command
    azsphere role delete : Deletes a role from a user in the current Azure Sphere tenant.

Arguments
    --role -r [Required] : Role to be deleted. Values from: azsphere role show-types.
    --user -u [Required] : The user from whom the role is being deleted. Specify user e-mail.
                           Values from: azsphere role list.

Tenant Selection Arguments
    --tenant -t          : The tenant to perform this operation in. Overrides the default selected
                           tenant. Specify tenant ID or tenant name. Values from: azsphere tenant
                           list.

Global Arguments
    --debug              : Increase logging verbosity to show all debug logs.
    --help -h            : Show this help message and exit.
    --only-show-errors   : Only show errors, suppressing warnings.
    --output -o          : Output format. Allowed values: json, jsonc, none, table, tsv, yaml,
                           yamlc. Default: table.
    --query              : JMESPath query string. See http://jmespath.org/ for more information and
                           examples.
    --verbose            : Increase logging verbosity. Use --debug for full debug logs.

輸入和輸出路徑

在 Azure 球體 CLI 中,用來指定路徑和檔案名的參數名稱已更新為與命令內容相關。

例如:

azsphere image-package pack-application --package-directory C:\AppSamples\LocalSamples\HelloWorld\HelloWorld_HighLevelApp\out\ARM-Debug\approotHelloWorld_HighLevelApp --destination myimage.imagepackage

在這裡, --package-directory 指定套件的輸入目錄,參數 --destination 會指定產生的圖像套件的路徑和檔案名。

Tab 完成

索引標籤完成可協助您自動完成命令列介面中的命令專案。 Azure 球體 CLI 索引標籤完成支援群組、命令、參數名稱和參數值。 輸入命令的幾個字元,然後按 TAB 以選取所需的完成文字。 如果多個專案是以您最初輸入的文字做為開頭,請繼續按 TAB 鍵,直到出現您要的專案為止。

在 Windows 上,PowerShell 7.1 提供索引標籤完成功能,無法從 Windows 命令提示字元取得。

若要在 Windows PowerShell 中啟用索引標籤完成,請執行 Import-Module -name AzsphereCli 。 此命令只會針對會話啟用索引標籤完成。 您可以 在 PowerShell 設定檔中新增腳本 ,以自訂您的環境,並為您啟動的每個 PowerShell 會話啟用索引標籤完成。

在 Linux 上,Azure 球體 CLI 支援 Bash 殼層底下命令的索引標籤完成功能。

此外,自動完成可協助您探索可用的命令、參數和參數值。 您可以在 Windows PowerShell 中使用CTRL+空格鍵,或在 Linux Bash 殼層中按兩次TAB

例如,輸入 azsphere 產品更新命令 ,然後使用自動完成來查看可用參數的清單。

PowerShell 自動完成參數

同樣地,輸入 azsphere 產品更新 -- 產品 並使用自動完成來查看您租使用者中可用產品的清單。

PowerShell 自動完成產品

互動式模式 (預覽)

重要

此功能為預覽版。 它可能會在未來的版本中變更或移除。

新的 CLI 提供互動式模式,可自動顯示說明資訊,並讓您更輕鬆地選取命令、子命令、參數和參數值。 使用 azsphere 互動式命令進入互動式 模式。 命令提示字元會變更, azsphere>> 表示您目前在互動式殼層中執行命令。 如需詳細資訊,請參閱 Azure 球體 CLI 互動式模式

Azure 球體互動式模式

CLI 輸出功能

本節說明 Azure 球體 CLI 中可用的輸出功能:

下列各節說明新 CLI 中可用的輸出功能:

支援的輸出格式

新 CLI 中可用的輸出格式為 json 、 (色彩化 JSON) 、 tsv (Tab 分隔值) 、 table (人性化的 ASCII 資料表) ,以及 yamljsonc 。 根據預設,CLI 輸出 。 table 若要深入瞭解可用的輸出格式,請參閱 Azure 球體 CLI 支援的輸出格式

重新導向和分頁

Azure 球體 CLI 不支援互動式分頁。 不過,您可以將命令的標準輸出重新導向至檔案。 在下列範例中,針對 Windows 命令提示字元、Windows PowerShell和 Linux Bash 殼層,標準輸出會傳送至 output.txt,並將標準錯誤傳送給 logs.txt。

azsphere device list --verbose > output.txt 2> logs.txt

您也可以透過管道至現有的分頁工具,在螢幕上分頁輸出。

例如:

  • 在 Windows (PowerShell) : azsphere device list | Out-Host –Paging
  • 在命令提示字元 (Windows) : azsphere device list | more
  • 在 Bash shell (Linux) : azsphere device list | less

注意

視傳回的資料量而定,此作業可能會很慢。

如需 Azure Azure 球體傳統 CLI 分頁的詳細資訊,請參閱 分頁和結果重新導向

查詢 CLI 命令輸出

Azure 球體 CLI 會使用自 --query 變數對命令的結果執行 JMESPath 查詢。 JMESPath 是 JSON 的查詢語言,可讓您從 CLI 輸出中選取和修改資料。 查詢會在任何顯示格式設定之前于 JSON 輸出上執行。

Azure 球體 CLI 中的所有命令都支援此 --query 引數。 如需詳細資訊和範例,請參閱 JMESPath 教學課程查詢 Azure CLI 命令輸出

回溯相容性

CLI 支援回溯相容性。 在每個版本中,我們的目標是在 JSON 和 YAML 中維持輸入 (命令名稱、參數名稱、參數值) 及其輸出的回溯相容性。 如果無法使用這類相容性,我們會在進行變更前至少 6 個月提供通知。 如需詳細資訊,請 參閱 (Azure 球體 CLI 中淘汰功能) 的重要變更

結束代碼

成功的命令會傳回零。 任何非零的值都可以解譯為錯誤碼。 成功時, JSONYAML 輸出具有回溯相容合約保證。

提供意見反應

如果您在 Azure 球體中發現錯誤, 請在 GitHub 上提報問題。 若要從命令列提供意見反應,請使用意見 反應命令

有效地使用 Azure 球體 CLI

Azure 球體 CLI 可用於 Bash、PowerShell 或命令提示字元視窗。 以下是使用 CLI 的一些秘訣:

  • 在值中使用引號:如果您提供包含空格的值參數,請以引號括住它。 在 Bash 或 PowerShell 中,會解譯單引號和雙引號。 在 Windows 命令提示字元中,只會解譯雙引號。 單引號會解譯為值的一部分。 例如, azsphere product create --name "My Fridge Product" . 如需詳細資訊,請參閱 引號和逸出字元
  • 許多 Azure 球體命令會以預設 table 格式顯示主機中的資訊。 例如, azsphere product device-group list --product DW100 . 有時候顯示的資訊無法正確容納主機。 如果您想要複製並貼上資訊,這可能會造成問題。 建議您嘗試下列選項:
    • 調整主機大小,然後再次執行命令。
    • JSON 輸出 用於精簡的輸出和腳本用途。 例如, azsphere product device-group list --product DW100 --output json .
    • 使用 Windows PowerShell 或 Bash 殼層中的索引卷標完成功能來自動完成命令專案。
    • 使用可提供互動式環境的互動式 模式 來自動顯示資訊,並可讓您更輕鬆地選取命令和子命令。 使用 azsphere 互動式命令進入互動式 模式。 命令提示字元會變更為azsphere >>,表示您目前在互動式殼層中執行命令。

另請參閱