Invoke-AzVMRunCommand
Kör ett kommando på den virtuella datorn.
Syntax
Invoke-AzVMRunCommand
[-ResourceGroupName] <String>
[-VMName] <String>
-CommandId <String>
[-ScriptPath <String>]
[-ScriptString <String>]
[-Parameter <Hashtable>]
[-AsJob]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-AzVMRunCommand
-CommandId <String>
[-ScriptPath <String>]
[-ScriptString <String>]
[-Parameter <Hashtable>]
[-ResourceId] <String>
[-AsJob]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-AzVMRunCommand
-CommandId <String>
[-ScriptPath <String>]
[-ScriptString <String>]
[-Parameter <Hashtable>]
[-VM] <PSVirtualMachine>
[-AsJob]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Anropa ett körningskommando på den virtuella datorn.
Exempel
Exempel 1: Anropa ett kommando i Windows – Använda ScriptPath-parametern när skriptet finns på den fjärranslutna virtuella Windows-datorn
Invoke-AzVMRunCommand -ResourceGroupName 'rgname' -VMName 'vmname' -CommandId 'RunPowerShellScript' -ScriptPath 'sample.ps1' -Parameter @{param1 = "var1"; param2 = "var2"}
Anropa ett körningskommando "RunPowerShellScript" med åsidosättande av skriptet "sample.ps1" på en virtuell Windows-dator med namnet "vmname" i resursgruppen "rgname". Var1 och var2 definieras som parametrar i sample.ps1. Parametervärdet kan endast vara strängtyp och skriptet ansvarar för att konvertera dem till andra typer om det behövs.
Exempel 2: Anropa ett kommando i Windows – Använda parametern ScriptString för att köra cmdlet på den virtuella Windows-datorn
Invoke-AzVMRunCommand -ResourceGroupName 'rgname' -VMName 'vmname' -CommandId 'RunPowerShellScript' -ScriptString "Set-TimeZone -Name 'Coordinated Universal Time' -PassThru"
Det här kommandot anropar ett körningskommando "RunShellScript" som kör cmdleten Set-TimeZone med tillhörande parametrar. Det här exemplet är användbart när du vill köra korta kommandon på en virtuell Windows-dator.
Exempel 3: Anropa ett kommando i Windows – Använda parametern ScriptString för att köra skriptblock på den virtuella Windows-datorn
$ScriptBlock = {
param(
[string] $NewTimeZone,
[string] $NewDate
)
Set-TimeZone -Id $NewTimeZone
Set-Date -Date [DateTime]$NewDate
}
$Script = [scriptblock]::create($ScriptBlock)
Invoke-AzVMRunCommand -ResourceGroupName 'rgname' -VMName 'vmname' -CommandId 'RunPowerShellScript' -ScriptString $Script -Parameter @{'NewTimeZone' = "UTC"; 'NewDate' = "Dec-8"}
Det här kommandot anropar ett körningskommando "RunShellScript" som kör ett skriptblock på en fjärransluten virtuell Windows-dator med namnet "vmname". Med skriptblockeringssättet kan du köra flera cmdletar med parametrar i en enda anrop och det sparar även tid på att anropa flera körningskommandon för olika cmdletar. Parametervärden kan endast vara av strängtyp.
Exempel 4: Anropa ett kommando i Linux
export param1=var1 param2=var2
set -- var1 var2 var3
Invoke-AzVMRunCommand -ResourceGroupName 'rgname' -Name 'vmname' -CommandId 'RunShellScript' -ScriptPath 'sample.bash' -Parameter @{"param1" = "var1";"param2" = "var2"}
echo This is a sample bash script
echo Usage 1: Ordered parameters: $0 $1
echo Usage 2: Named exports: $var1 $var2
Det här kommandot anropar körningskommandot "RunShellScript" och åsidosätter skriptet "sample.bash" på en virtuell Linux-dator med namnet "vmname". Var1 och var2 definieras som parametrar i sample.bash.
Parametrar
-AsJob
Kör cmdleten i bakgrunden och returnera ett jobbobjekt för att spåra förloppet.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-CommandId
Kör kommando-ID.
Typ: | String |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Confirm
Uppmanar dig att bekräfta innan du kör cmdleten.
Typ: | SwitchParameter |
Alias: | cf |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-DefaultProfile
Autentiseringsuppgifter, konto, klientorganisation och prenumeration som används för kommunikation med Azure.
Typ: | IAzureContextContainer |
Alias: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Parameter
Kör kommandoparametrarna. Ange parametrar som nyckel/värde-par som ska skickas vid skriptkörning.
Typ: | Hashtable |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-ResourceGroupName
Namnet på resursgruppen.
Typ: | String |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-ResourceId
Resurs-ID:t för den virtuella datorn.
Typ: | String |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-ScriptPath
Sökvägen till skriptet som ska köras. När det här värdet anges åsidosätter det angivna skriptet kommandots standardskript. Sökvägen ska peka på en fil från ett lokalt filsystem. Kommandot läser in det och skickar det för körning.
Typ: | String |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-ScriptString
Skriptet som ska köras som en sträng.
Typ: | String |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-VM
Objektet för den virtuella PS-datorn.
Typ: | PSVirtualMachine |
Alias: | VMProfile |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-VMName
Namnet på den virtuella datorn.
Typ: | String |
Alias: | Name |
Position: | 1 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-WhatIf
Visar vad som skulle hända om cmdleten körs. Cmdleten körs inte.
Typ: | SwitchParameter |
Alias: | wi |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
Utdata
Azure PowerShell