Azure Sphere CLI
重要
これは Azure Sphere (レガシ) のドキュメントです。 Azure Sphere (レガシ) は 2027 年 9 月 27 日に 再提供されておりユーザーは現時点で Azure Sphere (統合) に移行する必要があります。 TOC の上にある Version セレクターを使用して、Azure Sphere (統合) のドキュメントを表示します。
Azure Sphere SDK には、PowerShell、Windows コマンド プロンプト、または Linux コマンド シェルで使用できる Azure Sphere コマンド ライン インターフェイス (CLI) が用意されています。 Azure Sphere CLI は、Azure Sphere リソースの作成と管理に使用される一連のコマンドです。
Azure Sphere CLI は、Windows と Linux の両方に再提供される Azure Sphere クラシック CLI と共にインストールされるため、どちらのインターフェイスにもアクセスできます。 Azure Sphere CLI を使用するには:
- Windows では、PowerShell または標準の Windows コマンド プロンプトを使用します。
- Linux では、任意のコマンド シェルを使用します。
Azure Sphere CLI を実行する
Windows コマンド プロンプトまたは PowerShell から azsphere
コマンドを使用して Azure Sphere CLI を実行できるようになりました。 Windows コマンド プロンプトでは使用できない tab 入力候補 機能を提供するため、PowerShell をお勧めします。
Linux では、任意のコマンド ライン インターフェイス (CLI) から Azure Sphere CLI を実行できます。 インストール中に、Azure Sphere CLI または Azure Sphere クラシック CLI を推奨される既定の CLI バージョンとして設定できる通知が表示されます。
Yes
入力して Azure Sphere CLI を選択するか、Azure Sphere クラシック CLI を使用するNo
を入力します。 詳細については、「 Azure Sphere SDK のインストール を参照してください。
Note
コマンドの short フォーム は、Azure Sphere CLI バージョンではサポートされていません。 集計入力候補機能を使用して、使用可能なコマンドの一覧を表示することをお勧めします。 Windows では、廃止される Azure Sphere クラシック 開発者コマンド プロンプト ショートカットは、 Azure Sphere クラシック CLI でのみ使用できます。
CLI 入力機能
このセクションでは、Azure Sphere CLI で使用できる入力機能について説明します。
コマンド
Azure Sphere CLI のすべてのコマンドは、 azsphere
で始まります。 次に例を示します。
azsphere login
---------------------
Name
=====================
bob@contoso.com
---------------------
コマンドを見つける
CLI のコマンドはグループで編成されます。 Azure Sphere クラシック CLI と Azure Sphere CLI の --help
を使用して、使用可能なコマンドとパラメーターの完全なヘルプ情報を表示できます。
コマンド azsphere --help
を実行すると、コマンドの完全な一覧を取得できます。
次に例を示します。
- Azure Sphere クラシック CLI の場合は、
azsphere --help
またはazsphere -?
- Azure Sphere CLI の使用、
azsphere --help
、またはazsphere -h
パラメーター
パラメーターの名前の前に二重ハイフン (--) が付きます。これは、ハイフンの後の単語がパラメーターであることを示します。 パラメーターの名前と値を区切るためにスペースを使用します。 複合語であるパラメーターは、新しい CLI ではハイフン (-) で区切られます。
例: --component-id
または --application-update
オブジェクト識別の簡略化
Azure Sphere CLI では、各オブジェクトの種類を識別するために 1 つのパラメーターが使用されます。 つまり、そのパラメーターに適用できる ID、名前、IP、または場所のいずれかを指定できます。
たとえば、次のコマンドでテナント ID またはテナント名を使用できます。
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
------------------------------------ ------------------------------------ ---------- ------------------------------------ --------- ---------------------- ---------------------------------------------------------- -------------------------
複数の値
一部のコマンドでは、1 つのパラメーターに対して複数の値を使用できます。その場合は、各値でパラメーターを指定するか、1 つのパラメーターの後にスペースで区切られた値のリストを指定できます。 たとえば、次の 2 つのコマンドは同じものです。
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 Sphere 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 Sphere CLI のタブ補完は、グループ、コマンド、パラメーター名、およびパラメーター値でサポートされています。 コマンドの数文字を入力し、 TAB キーを押して目的の完了テキストを選択します。 最初に入力したテキストで始まる項目が複数ある場合は、目的の項目が表示されるまで Tab キーを何回か押します。
Windows では、PowerShell 7.1 には、Windows コマンド プロンプトでは使用できないタブ補完機能が用意されています。
Windows PowerShell でタブ補完を有効にするには、 Import-Module -name AzsphereCli
を実行します。
このコマンドは、セッションに対してのみタブ補完を有効にします。 PowerShell プロファイルにスクリプトを追加環境をカスタマイズし、開始するすべての PowerShell セッションでタブ補完を有効にすることができます。
Linux では、Azure Sphere CLI は Bash シェルのコマンドのタブ補完機能をサポートしています。
さらに、オートコンプリートは、使用できるコマンド、パラメーター、およびパラメーター値を検出するのに役立ちます。 これは、Windows PowerShell で CTRL + Space を使用するか、Linux Bash シェルで TAB を 2 回押すことで使用できます。
たとえば、「 azsphere product update command 」と入力し、オートコンプリートを使用して使用可能なパラメーターの一覧を表示します。
同様に、「 azsphere product update --product 」と入力し、オートコンプリートを使用してテナントで使用可能な製品の一覧を表示します。
対話型モード (プレビュー)
重要
この機能はプレビュー中です。 今後のリリースで変更または削除される可能性があります。
新しい CLI には、ヘルプ情報が自動的に表示され、コマンド、サブコマンド、パラメーター、およびパラメーター値を簡単に選択できる対話型モードが用意されています。 azsphere interactive コマンドを使用して対話型モードに入ります。 コマンド プロンプトが azsphere>>
に変わり、対話型シェルでコマンドを実行していることを示します。
詳細については、「 Azure Sphere CLI 対話型モードを参照してください。
CLI 出力機能
このセクションでは、Azure Sphere CLI で使用できる出力機能について説明します。
次のセクションでは、新しい CLI で使用できる出力機能について説明します。
サポートされている出力形式
新しい CLI で使用可能な出力形式は、 json
、 jsonc
(色分けされた JSON)、 tsv
(タブ区切り値)、 table
(人間が判読できる ASCII テーブル)、および yaml
です。 既定では、CLI は table
を出力します。 使用可能な出力形式の詳細については、「 Azure Sphere CLI のサポートされている出力形式を参照してください。
リダイレクトと改ページ位置の変更
Azure Sphere CLI では、対話型の改ページ位置設定はサポートされていません。 ただし、コマンドの標準出力をファイルにリダイレクトすることはできます。 次の例では、Windows コマンド プロンプト、Windows PowerShell、Linux Bash シェルの場合、標準出力がoutput.txtに送信され、標準エラーがlogs.txtに送信されます。
azsphere device list --verbose > output.txt 2> logs.txt
また、既存の改ページ位置ツールにパイプして、画面上の出力を改ページ処理することもできます。
次に例を示します。
- PowerShell (Windows):
azsphere device list | Out-Host –Paging
- コマンド プロンプト (Windows):
azsphere device list | more
- Bash シェル (Linux):
azsphere device list | less
Note
返されるデータの量によっては、この操作が遅くなる可能性があります。
Azure Azure Sphere クラシック CLI の改ページ調整の詳細については、「 Paging and result redirection」を参照してください。
CLI コマンドの出力を照会する
Azure Sphere CLI では、 --query
引数を使用して、コマンドの結果に対して JMESPath クエリを実行します。 JMESPath は、CLI の出力からデータを選択して変更できるようにする、JSON 用のクエリ言語です。 クエリは、表示形式の前に JSON 出力で実行されます。
--query
引数は、Azure Sphere CLI のすべてのコマンドでサポートされています。 詳細と例については、 JMESPath チュートリアル および azure CLI コマンド出力の Query を参照してください 。
旧バージョンとの互換性
CLI は下位互換性をサポートしています。 各リリースでは、入力 (コマンド名、パラメーター名、パラメーター値) と JSON と YAML での出力の両方の下位互換性を維持することを目指しています。 このような互換性が不可能な場合は、変更を加える前に少なくとも 6 か月分の通知を行います。 詳細については、「 Azure Sphere CLI での変更のインポート (廃止機能)を参照してください。
終了コード
成功したコマンドは 0 を返します。 0 以外の値は、エラー コードとして解釈できます。 成功すると、 JSON および YAML 出力には、下位互換性のある契約上の保証があります。
フィードバックを提供する
Azure Sphere でバグが見つかると、GitHub で問題を。 コマンド ラインからフィードバックを提供するには、 feedback コマンドを使用します。
Azure Sphere CLI を効果的に使用する
Azure Sphere CLI は、Bash、PowerShell、またはコマンド プロンプト ウィンドウから使用できます。 CLI を使用するためのヒントをいくつか次に示します。
- 値に引用符を使用する: パラメーターにスペースを含む値を指定する場合は、引用符で囲みます。 Bash または PowerShell では、一重引用符と二重引用符の両方が解釈されます。 Windows コマンド プロンプトでは、二重引用符のみが解釈されます。 単一引用符は、値の一部として解釈されます。 たとえば、
azsphere product create --name "My Fridge Product"
のようにします。 詳細については、「引用符とエスケープ文字を参照してください。 - 多くの Azure Sphere コマンドでは、既定の
table
形式でコンソールに情報が表示されます。 たとえば、azsphere product device-group list --product DW100
のようにします。 表示される情報が本体に正しく適合しない場合があります。 これにより、情報をコピーして貼り付ける場合に問題が発生する可能性があります。 次のオプションを試してみることをお勧めします。- コンソールのサイズを変更し、コマンドをもう一度実行します。
- 簡潔な出力とスクリプトの目的でJSON 出力を使用します。 たとえば、
azsphere product device-group list --product DW100 --output json
のようにします。 - Windows PowerShell または Bash シェルで tab-completion を使用して、コマンド エントリを自動的に完了します。
- インターアクティブ モードを使用すると情報を自動的に表示し、コマンドとサブコマンドを簡単に選択できる対話型環境が提供されます。 azsphere interactive コマンドを使用して対話型モードに入ります。 コマンド プロンプトが azsphere>> に変わり、対話型シェルでコマンドが実行されていることを示します。