Partager via


Invoke-AzVMRunCommand

Exécutez une commande sur la machine virtuelle.

Syntaxe

DefaultParameter (Par défaut)

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

Appelez une commande d’exécution sur la machine virtuelle.

Exemples

Exemple 1 : Appeler une commande sur Windows - Utilisation du paramètre ScriptPath lorsque le script réside sur la machine virtuelle Windows distante

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

Appelez une commande d’exécution « RunPowerShellScript » en remplaçant le script «sample.ps1» sur une machine virtuelle Windows nommée « vmname » dans le groupe de ressources « rgname ». Var1 et var2 sont définis comme paramètres dans le sample.ps1. La valeur du paramètre peut être un type de chaîne uniquement et le script est chargé de les convertir en d’autres types si nécessaire.

Exemple 2 : Appeler une commande sur Windows - Utilisation du paramètre ScriptString pour exécuter l’applet de commande sur la machine virtuelle Windows

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

Cette commande appelle une commande d’exécution « RunShellScript » qui exécute l’applet de commande Set-TimeZone avec ses paramètres associés. Cet exemple est utile lorsque vous souhaitez exécuter des commandes courtes sur une machine virtuelle Windows.

Exemple 3 : Appeler une commande sur Windows - Utilisation du paramètre ScriptString pour exécuter des blocs de script sur la machine virtuelle 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"}

Cette commande appelle une commande d’exécution « RunShellScript » qui exécute un bloc de script sur une machine virtuelle Windows distante nommée « vmname ». La méthode de bloc de script vous permet d’exécuter plusieurs applets de commande avec des paramètres dans un appel unique et permet également d’appeler plusieurs commandes d’exécution pour différentes applets de commande. La ou les valeurs de paramètre peuvent être de type chaîne uniquement.

Exemple 4 : Appeler une commande sur 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

Cette commande appelle une commande d’exécution « RunShellScript » en remplaçant le script « sample.bash » sur une machine virtuelle Linux nommée « vmname ». Var1 et var2 sont définis comme paramètres dans sample.bash.

Paramètres

-AsJob

Exécutez l’applet de commande en arrière-plan et retournez un objet de travail pour suivre la progression.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-CommandId

ID de commande d’exécution.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:cf

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-DefaultProfile

Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.

Propriétés du paramètre

Type:IAzureContextContainer
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:AzContext, AzureRmContext, AzureCredential

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Parameter

Paramètres de commande d’exécution. Spécifiez les paramètres en tant que paires clé/valeur à passer lors de l’exécution du script.

Propriétés du paramètre

Type:Hashtable
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ResourceGroupName

Nom du groupe de ressources.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

DefaultParameter
Position:0
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-ResourceId

ID de ressource de la machine virtuelle.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ResourceIdParameter
Position:0
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-ScriptPath

Chemin d’accès du script à exécuter. Lorsque cette valeur est donnée, le script donné remplace le script par défaut de la commande. Le chemin d’accès doit pointer vers un fichier à partir d’un système de fichiers local. La commande le charge et l’envoie pour l’exécution.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ScriptString

Script à exécuter sous forme de chaîne.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-VM

Objet de machine virtuelle PS.

Propriétés du paramètre

Type:PSVirtualMachine
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:VMProfile

Jeux de paramètres

VMParameter
Position:0
Obligatoire:True
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-VMName

Nom de la machine virtuelle.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:Nom

Jeux de paramètres

DefaultParameter
Position:1
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande ne s’exécute pas.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:Wi

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

String

PSVirtualMachine

Sorties

PSRunCommandResult