Azure Sphere CLI

De Azure Sphere SDK biedt de Azure Sphere-opdrachtregelinterface (CLI) die beschikbaar is in PowerShell, Windows-opdrachtprompt of Linux-opdrachtshell. De Azure Sphere CLI is een set opdrachten die wordt gebruikt voor het maken en beheren van Azure Sphere-resources.

De Azure Sphere CLI wordt geïnstalleerd naast de klassieke Azure Sphere-CLI op zowel Windows als Linux, zodat u toegang hebt tot beide interfaces. Azure Sphere CLI gebruiken:

  • Gebruik in Windows PowerShell of een standaard Windows-opdrachtprompt.
  • Gebruik in Linux een willekeurige opdrachtshell.

De Azure Sphere CLI uitvoeren

U kunt nu de Azure Sphere CLI uitvoeren met de opdracht vanaf de azsphere Windows-opdrachtprompt of PowerShell. We raden PowerShell aan omdat het de functie voor het voltooien van tabbladen biedt die niet beschikbaar is via de Windows-opdrachtprompt.

In Linux kunt u Azure Sphere CLI uitvoeren vanaf elke opdrachtregelinterface (CLI). Tijdens de installatie wordt een melding weergegeven waarmee u De Azure Sphere CLI of de klassieke Azure Sphere CLI kunt instellen als de standaard-CLI-versie van voorkeur. Typ Yes om Azure Sphere CLI te kiezen of type No om de klassieke Azure Sphere-CLI te gebruiken. Zie De Azure Sphere SDK installeren voor meer informatie.

Opmerking

Het korte formulier voor opdrachten wordt niet ondersteund in de Azure Sphere CLI-versie. U wordt aangeraden de functie voor het voltooien van tabbladen te gebruiken om de lijst met beschikbare opdrachten weer te geven. In Windows kan de buiten gebruik gesteld snelkoppeling naar de klassieke opdrachtprompt van Azure Sphere alleen worden gebruikt met de klassieke Azure Sphere-CLI.

CLI-invoerfuncties

In deze sectie worden de invoerfuncties beschreven die beschikbaar zijn in de Azure Sphere CLI:

Opdrachten

Alle opdrachten in de Azure Sphere CLI beginnen met azsphere. Bijvoorbeeld:

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

Opdrachten zoeken

Opdrachten in de CLI zijn ingedeeld in groepen. U kunt volledige Help-informatie voor de beschikbare opdrachten en parameters bekijken met behulp van --help de klassieke Azure Sphere-CLI en Azure Sphere CLI.

U kunt een volledige lijst met opdrachten ophalen door de opdracht azsphere --helpuit te voeren.

Bijvoorbeeld:

  • Voor het klassieke Cli-gebruik van Azure Sphere, azsphere --help of azsphere -?
  • Voor Azure Sphere CLI gebruiken, azsphere --help of azsphere -h

Parameters

De naam van de parameter wordt voorafgegaan door dubbele afbreekstreepjes (--), wat aangeeft dat het woord na het afbreekstreepje een parameter is. Gebruik een spatie om de parameternaam en -waarde te scheiden. De parameters die samengestelde woorden zijn, worden gescheiden door een afbreekstreepje (-) in de nieuwe CLI.

Bijvoorbeeld: --component-id of --application-update

Vereenvoudigde objectidentificatie

In de Azure Sphere CLI wordt één parameter gebruikt om elk objecttype te identificeren. Dit betekent dat u de id, naam, IP of locatie kunt opgeven die van toepassing is op die parameter.

U kunt bijvoorbeeld de tenant-id of tenantnaam gebruiken in de volgende opdracht:

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

Of

azsphere device list --tenant MyTenant

Dit is geïmplementeerd voor de --deviceparameters , --tenant, --producten --device-group .

Bijvoorbeeld:

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
   ------------------------------------ ------------------------------------ ---------- ------------------------------------ --------- ---------------------- ---------------------------------------------------------- -------------------------

Meerdere waarden

Sommige opdrachten staan meerdere waarden voor één parameter toe. In dat geval kunt u een parameter opgeven met elke waarde of één parameter gevolgd door een lijst met waarden gescheiden door spaties. De volgende twee opdrachten zijn bijvoorbeeld gelijkwaardig:

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

Vereiste en optionele parameters

Wanneer u een lijst met parameters uitvoert azsphere <command> <sub-command> --help die van toepassing zijn op die opdracht wordt weergegeven. De instelling [Vereist] geeft aan of de parameter verplicht is om de opdracht uit te voeren. Alle andere parameters zijn optioneel.

Als de vereiste parameter ontbreekt, wordt u gevraagd om een waarde voor de parameter.

Bijvoorbeeld:

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.

Invoer- en uitvoerpaden

In Azure Sphere CLI zijn de parameternamen die worden gebruikt om een pad en bestandsnaam op te geven, bijgewerkt om relevant te zijn voor de context van de opdracht.

Bijvoorbeeld:

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

--package-directory Hier geeft u de invoermap voor het pakket en --destination parameter het pad en de bestandsnaam voor het resulterende installatiekopieënpakket op.

Tabvoltooiing

Tabvoltooiing biedt hulp bij het automatisch voltooien van een opdrachtvermelding in de opdrachtregelinterface. Op het tabblad Azure Sphere CLI wordt voltooiing ondersteund voor groepen, opdrachten, namen van parameters en parameterwaarden. Typ een paar tekens van een opdracht en druk op Tab om de gewenste voltooiingstekst te selecteren. Als meerdere items beginnen met de tekst die u in eerste instantie hebt getypt, drukt u op Tab totdat het gewenste item wordt weergegeven.

In Windows biedt PowerShell 7.1 de functie voor het aanvullen van tabbladen die niet beschikbaar is via de Windows-opdrachtprompt.

Voer uit om het voltooien van tabbladen in Windows PowerShell in te schakelenImport-Module -name AzsphereCli. Met deze opdracht kunt u alleen tabs voltooien voor de sessie. U kunt een script toevoegen aan uw PowerShell-profiel om uw omgeving aan te passen en het voltooien van tabbladen in te schakelen voor elke PowerShell-sessie die u start.

In Linux ondersteunt Azure Sphere CLI de functie voor het voltooien van tabbladen voor opdrachten in de Bash-shell.

Daarnaast kunt u met automatisch aanvullen opdrachten, parameters en parameterwaarden detecteren die beschikbaar zijn voor gebruik. Dit is beschikbaar via Ctrl+Spatiebalk in Windows PowerShell of druk tweemaal op Tab in de Linux Bash-shell.

Typ bijvoorbeeld de opdracht azsphere product update en gebruik automatisch aanvullen om een lijst met beschikbare parameters weer te geven.

PowerShell-parameters voor automatisch aanvullen

Typ op dezelfde manier azsphere product update --product en gebruik automatisch aanvullen om een lijst met beschikbare producten in uw tenant weer te geven.

PowerShell-producten voor automatisch aanvullen

Interactieve modus (preview)

Belangrijk

Deze functie is in preview. Deze kan in een toekomstige release worden gewijzigd of verwijderd.

De nieuwe CLI biedt een interactieve modus die automatisch Help-informatie weergeeft en het gemakkelijker maakt om opdrachten, subopdrachten, parameter en parameterwaarden te selecteren. Ga naar de interactieve modus met de interactieve opdracht azsphere . De opdrachtprompt wordt gewijzigd in azsphere>> om aan te geven dat u nu opdrachten uitvoert in de interactieve shell. Zie Interactieve modus van Azure Sphere CLI voor meer informatie.

Interactieve modus van Azure Sphere

CLI-uitvoerfuncties

In deze sectie wordt uitgelegd welke uitvoerfuncties beschikbaar zijn in de Azure Sphere CLI:

In de volgende secties worden de uitvoerfuncties beschreven die beschikbaar zijn in de nieuwe CLI:

Ondersteunde uitvoerindelingen

De beschikbare uitvoerindelingen in de nieuwe CLI zijn json, jsonc (gekleurde JSON), tsv (Door tabs gescheiden waarden), table (door mensen leesbare ASCII-tabellen) en yaml. Standaard voert de CLI uit table. Zie Ondersteunde uitvoerindelingen voor Azure Sphere CLI voor meer informatie over de beschikbare uitvoerindelingen.

Omleiding en paginering

Azure Sphere CLI biedt geen ondersteuning voor interactieve paginering. U kunt de standaarduitvoer van een opdracht echter omleiden naar een bestand. In het volgende voorbeeld wordt voor Windows-opdrachtprompt, Windows PowerShell en Linux Bash-shell de standaarduitvoer verzonden naar output.txt en wordt de standaardfout verzonden naar logs.txt.

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

U kunt ook de uitvoer op het scherm pagineren door door te sluisen naar bestaande pagineringshulpmiddelen.

Bijvoorbeeld:

  • In PowerShell (Windows): azsphere device list | Out-Host –Paging
  • Bij een opdrachtprompt (Windows): azsphere device list | more
  • In Bash-shell (Linux): azsphere device list | less

Opmerking

Deze bewerking kan mogelijk traag zijn, afhankelijk van hoeveel gegevens worden geretourneerd.

Zie Paginering en resultaatomleiding voor meer informatie over paginering voor de klassieke Azure Sphere-CLI.

Query CLI-opdrachtuitvoer

De Azure Sphere CLI gebruikt het --query argument om een JMESPath-query uit te voeren op de resultaten van opdrachten. JMESPath is een querytaal voor JSON, zodat u gegevens uit CLI-uitvoer kunt selecteren en wijzigen. Query's worden uitgevoerd op de JSON-uitvoer vóór een weergaveopmaak.

Het --query argument wordt ondersteund door alle opdrachten in Azure Sphere CLI. Zie de JMESPath-zelfstudie en Query uitvoeren op Azure CLI-opdrachtuitvoer voor meer informatie en voorbeelden.

Achterwaartse compatibiliteit

De CLI ondersteunt achterwaartse compatibiliteit. In elke release streven we ernaar om achterwaartse compatibiliteit te behouden voor zowel invoer (opdrachtnamen, parameternamen, parameterwaarden) als de uitvoer in JSON en YAML. In gevallen waarin dergelijke compatibiliteit niet mogelijk is, zullen we u ten minste 6 maanden van tevoren informeren voordat we wijzigingen aanbrengen. Zie Belangrijke wijzigingen (functies buiten gebruik stellen) in Azure Sphere CLI voor meer informatie.

Afsluitcodes

Een geslaagde opdracht retourneert een nul. Elke niet-nulwaarde kan worden geïnterpreteerd als een foutcode. Na succes hebben de JSON - en YAML-uitvoer een achterwaarts compatibele contractuele garantie.

Feedback

Als u een fout vindt in Azure Sphere, kunt u een probleem indienen op GitHub. Gebruik de opdracht feedback om feedback te geven vanaf de opdrachtregel.

Azure Sphere CLI effectief gebruiken

Azure Sphere CLI kan worden gebruikt vanuit Bash, PowerShell of een opdrachtpromptvenster. Hier volgen enkele tips voor het gebruik van de CLI:

  • Aanhalingstekens in waarden gebruiken: als u een parameter een waarde opgeeft die spaties bevat, plaatst u deze tussen aanhalingstekens. In Bash of PowerShell worden zowel enkele als dubbele aanhalingstekens geïnterpreteerd. In de Windows-opdrachtprompt worden alleen dubbele aanhalingstekens geïnterpreteerd. Enkele aanhalingstekens worden geïnterpreteerd als onderdeel van de waarde. Bijvoorbeeld azsphere product create --name "My Fridge Product". Zie Aanhalingstekens en escapetekens voor meer informatie.
  • Veel Azure Sphere-opdrachten tonen u informatie in de -console in de standaardindeling table . Bijvoorbeeld azsphere product device-group list --product DW100. Soms past de weergegeven informatie niet goed in de console. Dit kan problemen veroorzaken als u de gegevens wilt kopiëren en plakken. We raden u aan de volgende opties te proberen:
    • Wijzig het formaat van de console en voer de opdracht opnieuw uit.
    • Gebruik JSON-uitvoer voor beknopte uitvoer- en scriptdoeleinden. Bijvoorbeeld azsphere product device-group list --product DW100 --output json.
    • Gebruik tab-voltooiing in Windows PowerShell- of Bash-shell om een opdrachtinvoer automatisch te voltooien.
    • Gebruik de interactieve modus die een interactieve omgeving biedt om automatisch informatie weer te geven en het gemakkelijker maakt om opdrachten en subopdrachten te selecteren. Ga naar de interactieve modus met de interactieve opdracht azsphere . De opdrachtprompt verandert in azsphere>> om aan te geven dat u nu opdrachten uitvoert in de interactieve shell.

Zie ook