Invoke-AzVMRunCommand
Na virtuálním počítači spusťte příkaz.
Syntaxe
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
Vyvolejte na virtuálním počítači příkaz spustit.
Příklady
Příklad 1: Vyvolání příkazu ve Windows – použití parametru ScriptPath, když se skript nachází na vzdáleném virtuálním počítači s Windows
Invoke-AzVMRunCommand -ResourceGroupName 'rgname' -VMName 'vmname' -CommandId 'RunPowerShellScript' -ScriptPath 'sample.ps1' -Parameter @{param1 = "var1"; param2 = "var2"}
Vyvolejte příkaz run RunPowerShellScript s přepsáním skriptusample.ps1na virtuálním počítači s Windows s názvem vmname ve skupině prostředků rgname. Var1 a var2 jsou definovány jako parametry v sample.ps1. Hodnota parametru může být pouze typ řetězce a skript je v případě potřeby zodpovědný za jejich převod na jiné typy.
Příklad 2: Vyvolání příkazu ve Windows – Spuštění rutiny na virtuálním počítači s Windows pomocí parametru ScriptString
Invoke-AzVMRunCommand -ResourceGroupName 'rgname' -VMName 'vmname' -CommandId 'RunPowerShellScript' -ScriptString "Set-TimeZone -Name 'Coordinated Universal Time' -PassThru"
Tento příkaz vyvolá příkaz run RunShellScript, který spustí rutinu Set-TimeZone s přidruženými parametry. Tento příklad je užitečný, když chcete na virtuálním počítači s Windows spouštět krátké příkazy.
Příklad 3: Vyvolání příkazu ve Windows – Spuštění bloků skriptu na virtuálním počítači s Windows pomocí parametru ScriptString
$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"}
Tento příkaz vyvolá příkaz run RunShellScript, který spustí blok skriptu na vzdáleném virtuálním počítači s Windows s názvem vmname. Blok skriptu umožňuje spouštět více rutin s parametry v jediném vyvolání a také šetří čas při vyvolání více příkazů spuštění pro různé rutiny. Hodnoty parametrů můžou být pouze typu řetězce.
Příklad 4: Vyvolání příkazu v Linuxu
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
Tento příkaz vyvolá příkaz run RunShellScript s přepsáním skriptu sample.bash na virtuálním počítači s Linuxem s názvem vmname. Var1 a var2 jsou definovány jako parametry v sample.bash.
Parametry
-AsJob
Spusťte rutinu na pozadí a vraťte objekt úlohy ke sledování průběhu.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CommandId
ID příkazu spustit.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Confirm
Před spuštěním rutiny vás vyzve k potvrzení.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-DefaultProfile
Přihlašovací údaje, účet, tenant a předplatné používané ke komunikaci s Azure.
Typ: | IAzureContextContainer |
Aliasy: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Parameter
Parametry příkazu spustit. Zadejte parametry jako páry klíč/hodnota, které se mají předat při spuštění skriptu.
Typ: | Hashtable |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-ResourceGroupName
Název skupiny prostředků.
Typ: | String |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-ResourceId
ID prostředku pro virtuální počítač.
Typ: | String |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-ScriptPath
Cesta ke skriptu, který se má spustit. Pokud je tato hodnota zadaná, daný skript přepíše výchozí skript příkazu. Cesta by měla odkazovat na soubor z místního systému souborů. Příkaz ho načte a odešle ho ke spuštění.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-ScriptString
Skript, který se má spustit jako řetězec.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-VM
Objekt virtuálního počítače PS.
Typ: | PSVirtualMachine |
Aliasy: | VMProfile |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-VMName
Název virtuálního počítače.
Typ: | String |
Aliasy: | Name |
Position: | 1 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-WhatIf
Ukazuje, co se stane, když se rutina spustí. Rutina se nespustí.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
Výstupy
Azure PowerShell