Compartir a través de


Invoke-AzVMRunCommand

Ejecute un comando en la máquina virtual.

Sintaxis

DefaultParameter (valor predeterminado)

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

Description

Invoque un comando run en la máquina virtual.

Ejemplos

Ejemplo 1: Invocar un comando en Windows: uso del parámetro ScriptPath cuando el script reside en la máquina virtual Windows remota

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

Invoque un comando de ejecución "RunPowerShellScript" con la invalidación del script "sample.ps1" en una máquina virtual Windows denominada "vmname" en el grupo de recursos "rgname". Var1 y var2 se definen como parámetros en el sample.ps1. El valor del parámetro solo puede ser de tipo de cadena y el script es responsable de convertirlos a otros tipos si es necesario.

Ejemplo 2: Invocar un comando en Windows: uso del parámetro ScriptString para ejecutar el cmdlet en la máquina virtual Windows

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

Este comando invoca un comando de ejecución "RunShellScript" que ejecutará el cmdlet Set-TimeZone con sus parámetros asociados. Este ejemplo es útil cuando desea ejecutar comandos cortos en una máquina virtual Windows.

Ejemplo 3: Invocar un comando en Windows: uso del parámetro ScriptString para ejecutar bloques de script en la máquina virtual 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"}

Este comando invoca un comando de ejecución "RunShellScript" que ejecuta un bloque de script en una máquina virtual Windows remota denominada "vmname". La forma de bloqueo de script permite ejecutar varios cmdlets con parámetros en una sola invocación y también ahorra tiempo al invocar varios comandos de ejecución para distintos cmdlets. Los valores de parámetro solo pueden ser de tipo de cadena.

Ejemplo 4: Invocar un comando en 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

Este comando invoca un comando de ejecución "RunShellScript" con la invalidación del script "sample.bash" en una máquina virtual Linux denominada "vmname". Var1 y var2 se definen como parámetros en sample.bash.

Parámetros

-AsJob

Ejecute el cmdlet en segundo plano y devuelva un objeto de trabajo para realizar un seguimiento del progreso.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-CommandId

Identificador de comando de ejecución.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:cf

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-DefaultProfile

Credenciales, cuenta, inquilino y suscripción usados para la comunicación con Azure.

Propiedades de parámetro

Tipo:IAzureContextContainer
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:AzContext, AzureRmContext, AzureCredential

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Parameter

Parámetros del comando run. Especifique los parámetros como pares clave-valor que se van a pasar en la ejecución del script.

Propiedades de parámetro

Tipo:Hashtable
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-ResourceGroupName

Nombre del grupo de recursos.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

DefaultParameter
Posición:0
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-ResourceId

Identificador de recurso de la máquina virtual.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

ResourceIdParameter
Posición:0
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-ScriptPath

Ruta de acceso del script que se va a ejecutar. Cuando se especifica este valor, el script especificado invalidará el script predeterminado del comando. La ruta de acceso debe apuntar a un archivo desde un sistema de archivos local. El comando lo cargará y lo enviará para su ejecución.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-ScriptString

Script que se va a ejecutar como una cadena.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-VM

Objeto de máquina virtual PS.

Propiedades de parámetro

Tipo:PSVirtualMachine
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:VMProfile

Conjuntos de parámetros

VMParameter
Posición:0
Obligatorio:True
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-VMName

El nombre de la máquina virtual.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:Nombre

Conjuntos de parámetros

DefaultParameter
Posición:1
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:Wi

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.

Entradas

String

PSVirtualMachine

Salidas

PSRunCommandResult