Поделиться через


Invoke-AzVMRunCommand

Выполните команду на виртуальной машине.

Синтаксис

DefaultParameter (по умолчанию)

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

Описание

Вызовите команду выполнения на виртуальной машине.

Примеры

Пример 1. Вызов команды в Windows — использование параметра ScriptPath при расположении скрипта на удаленной виртуальной машине Windows

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

Вызовите команду запуска RunPowerShellScript с переопределением скриптаsample.ps1на виртуальной машине Windows с именем vmname в группе ресурсов rgname. Var1 и var2 определяются как параметры в sample.ps1. Значение параметра может быть только строковым типом, и скрипт отвечает за преобразование их в другие типы при необходимости.

Пример 2. Вызов команды в Windows— использование параметра ScriptString для выполнения командлета на виртуальной машине Windows

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

Эта команда вызывает команду run "RunShellScript", которая будет выполнять командлет Set-TimeZone с соответствующими параметрами. Этот пример полезен при выполнении коротких команд на виртуальной машине Windows.

Пример 3. Вызов команды в Windows— использование параметра ScriptString для запуска блоков скриптов на виртуальной машине 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"}

Эта команда вызывает команду run "RunShellScript", которая выполняет блок скрипта на удаленной виртуальной машине Windows с именем vmname. Блочный способ скрипта позволяет выполнять несколько командлетов с параметрами в одном вызове, а также экономит время при вызове нескольких команд выполнения для разных командлетов. Значения параметров могут иметь только строковый тип.

Пример 4. Вызов команды в 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

Эта команда вызывает команду run "RunShellScript" с переопределением скрипта sample.bash на виртуальной машине Linux с именем vmname. Var1 и var2 определяются как параметры в примере.bash.

Параметры

-AsJob

Запустите командлет в фоновом режиме и верните объект задания для отслеживания хода выполнения.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-CommandId

Идентификатор команды выполнения.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:True
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Confirm

Запрашивает подтверждение перед запуском cmdlet.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:cf

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DefaultProfile

Учетные данные, учетная запись, клиент и подписка, используемые для взаимодействия с Azure.

Свойства параметра

Тип:IAzureContextContainer
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:AzContext, AzureRmContext, AzureCredential

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Parameter

Параметры команды выполнения. Укажите параметры в качестве пар "ключ-значение", которые передаются при выполнении скрипта.

Свойства параметра

Тип:Hashtable
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-ResourceGroupName

Имя группы ресурсов.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DefaultParameter
Position:0
Обязательно:True
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-ResourceId

Идентификатор ресурса виртуальной машины.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

ResourceIdParameter
Position:0
Обязательно:True
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-ScriptPath

Путь к выполняемму скрипту. Если это значение задано, данный скрипт переопределит скрипт по умолчанию команды. Путь должен указывать на файл из локальной файловой системы. Команда загружает ее и отправляет ее для выполнения.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-ScriptString

Скрипт, выполняемый в виде строки.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-VM

Объект виртуальной машины PS.

Свойства параметра

Тип:PSVirtualMachine
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:VMProfile

Наборы параметров

VMParameter
Position:0
Обязательно:True
Значение из конвейера:True
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-VMName

Имя виртуальной машины.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:Имя

Наборы параметров

DefaultParameter
Position:1
Обязательно:True
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-WhatIf

Показывает, что произойдет, если командлет будет запущен. Командлет не запускается.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:wi

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

Входные данные

String

PSVirtualMachine

Выходные данные

PSRunCommandResult