Bagikan melalui


Invoke-AzVMRunCommand

Jalankan perintah pada VM.

Sintaks

DefaultParameter (Default)

Invoke-AzVMRunCommand
    [-ResourceGroupName] <String>
    [-VMName] <String>
    -CommandId <String>
    [-ScriptPath <String>]
    [-ScriptString <String>]
    [-Parameter <Hashtable>]
    [-AsJob]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ResourceIdParameter

Invoke-AzVMRunCommand
    [-ResourceId] <String>
    -CommandId <String>
    [-ScriptPath <String>]
    [-ScriptString <String>]
    [-Parameter <Hashtable>]
    [-AsJob]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

VMParameter

Invoke-AzVMRunCommand
    [-VM] <PSVirtualMachine>
    -CommandId <String>
    [-ScriptPath <String>]
    [-ScriptString <String>]
    [-Parameter <Hashtable>]
    [-AsJob]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Deskripsi

Panggil perintah jalankan pada VM.

Contoh

Contoh 1: Memanggil perintah di Windows - Menggunakan parameter ScriptPath saat skrip berada di VM Windows jarak jauh

Invoke-AzVMRunCommand -ResourceGroupName 'rgname' -VMName 'vmname' -CommandId 'RunPowerShellScript' -ScriptPath 'sample.ps1' -Parameter @{param1 = "var1"; param2 = "var2"}

Panggil perintah jalankan 'RunPowerShellScript' dengan mengambil alih skrip 'sample.ps1' pada VM Windows bernama 'vmname' dalam grup sumber daya 'rgname'. Var1 dan var2 didefinisikan sebagai parameter dalam sample.ps1. Nilai parameter hanya dapat berupa jenis string dan skrip bertanggung jawab untuk mengonversinya ke jenis lain jika diperlukan.

Contoh 2: Memanggil perintah di Windows - Menggunakan parameter ScriptString untuk menjalankan cmdlet pada VM Windows

Invoke-AzVMRunCommand -ResourceGroupName 'rgname' -VMName 'vmname' -CommandId 'RunPowerShellScript' -ScriptString "Set-TimeZone -Name 'Coordinated Universal Time' -PassThru"

Perintah ini memanggil perintah jalankan 'RunShellScript' yang akan menjalankan cmdlet Set-TimeZone dengan parameter terkait. Contoh ini berguna ketika Anda ingin menjalankan perintah singkat pada Windows VM.

Contoh 3: Memanggil perintah di Windows - Menggunakan parameter ScriptString untuk menjalankan blok skrip pada VM Windows

$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"}

Perintah ini memanggil perintah jalankan 'RunShellScript' yang menjalankan blok skrip pada VM Windows jarak jauh bernama 'vmname'. Cara blok skrip memungkinkan Anda menjalankan beberapa cmdlet dengan parameter dalam satu pemanggilan dan juga menghemat waktu untuk memanggil beberapa perintah eksekusi untuk cmdlet yang berbeda. Nilai parameter hanya dapat berjenis string.

Contoh 4: Memanggil perintah di 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

Perintah ini memanggil perintah jalankan 'RunShellScript' dengan menimpa skrip 'sample.bash' pada VM Linux bernama 'vmname'. Var1 dan var2 didefinisikan sebagai parameter dalam sample.bash.

Parameter

-AsJob

Jalankan cmdlet di latar belakang dan kembalikan objek pekerjaan untuk melacak kemajuan.

Properti parameter

Jenis:SwitchParameter
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-CommandId

ID perintah eksekusi.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

(All)
Position:Named
Wajib:True
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Confirm

Meminta konfirmasi sebelum menjalankan cmdlet.

Properti parameter

Jenis:SwitchParameter
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:Cf

Kumpulan parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-DefaultProfile

Kredensial, akun, penyewa, dan langganan yang digunakan untuk komunikasi dengan Azure.

Properti parameter

Jenis:IAzureContextContainer
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:AzContext, AzureRmContext, AzureCredential

Kumpulan parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Parameter

Parameter perintah eksekusi. Tentukan parameter sebagai pasangan kunci/nilai yang akan diteruskan pada eksekusi skrip.

Properti parameter

Jenis:Hashtable
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-ResourceGroupName

Nama grup sumber daya.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

DefaultParameter
Position:0
Wajib:True
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-ResourceId

ID sumber daya untuk VM.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

ResourceIdParameter
Position:0
Wajib:True
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-ScriptPath

Jalur skrip yang akan dijalankan. Ketika nilai ini diberikan, skrip yang diberikan akan mengambil alih skrip default perintah. Jalur harus menunjuk ke file dari sistem file lokal. Perintah akan memuatnya dan mengirimkannya untuk eksekusi.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-ScriptString

Skrip yang akan dijalankan sebagai string.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-VM

Objek komputer virtual PS.

Properti parameter

Jenis:PSVirtualMachine
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:VMProfile

Kumpulan parameter

VMParameter
Position:0
Wajib:True
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-VMName

Nama mesin virtual.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:Nama

Kumpulan parameter

DefaultParameter
Position:1
Wajib:True
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-WhatIf

Menunjukkan apa yang akan terjadi ketika cmdlet dijalankan. Cmdlet tidak dijalankan.

Properti parameter

Jenis:SwitchParameter
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:wi

Kumpulan parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

CommonParameters

Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.

Input

String

PSVirtualMachine

Output

PSRunCommandResult