Set-AzVMRunCommand

実行コマンドを作成または更新する操作。

構文

Set-AzVMRunCommand
   -ResourceGroupName <String>
   -RunCommandName <String>
   -VMName <String>
   [-SubscriptionId <String>]
   -Location <String>
   [-AsyncExecution]
   [-ErrorBlobManagedIdentityClientId <String>]
   [-ErrorBlobManagedIdentityObjectId <String>]
   [-ErrorBlobUri <String>]
   [-OutputBlobManagedIdentityClientId <String>]
   [-OutputBlobManagedIdentityObjectId <String>]
   [-OutputBlobUri <String>]
   [-Parameter <IRunCommandInputParameter[]>]
   [-ProtectedParameter <IRunCommandInputParameter[]>]
   [-RunAsPassword <String>]
   [-RunAsUser <String>]
   [-ScriptUriManagedIdentityClientId <String>]
   [-ScriptUriManagedIdentityObjectId <String>]
   [-SourceCommandId <String>]
   [-SourceScript <String>]
   [-SourceScriptUri <String>]
   [-Tag <Hashtable>]
   [-TimeoutInSecond <Int32>]
   [-TreatFailureAsDeploymentFailure]
   [-DefaultProfile <PSObject>]
   [-AsJob]
   [-NoWait]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzVMRunCommand
   -ResourceGroupName <String>
   -RunCommandName <String>
   -VMName <String>
   [-SubscriptionId <String>]
   -Location <String>
   [-AsyncExecution]
   [-ErrorBlobManagedIdentityClientId <String>]
   [-ErrorBlobManagedIdentityObjectId <String>]
   [-ErrorBlobUri <String>]
   [-OutputBlobManagedIdentityClientId <String>]
   [-OutputBlobManagedIdentityObjectId <String>]
   [-OutputBlobUri <String>]
   [-Parameter <IRunCommandInputParameter[]>]
   [-ProtectedParameter <IRunCommandInputParameter[]>]
   [-RunAsPassword <String>]
   [-RunAsUser <String>]
   [-ScriptUriManagedIdentityClientId <String>]
   [-ScriptUriManagedIdentityObjectId <String>]
   [-Tag <Hashtable>]
   [-TimeoutInSecond <Int32>]
   [-TreatFailureAsDeploymentFailure]
   -ScriptLocalPath <String>
   [-DefaultProfile <PSObject>]
   [-AsJob]
   [-NoWait]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

説明

実行コマンドを作成または更新する操作。

例 1: ストレージ BLOB SAS URL を使用して VM で実行コマンドを作成または更新する

Set-AzVMRunCommand -ResourceGroupName MyRG0 -VMName MyVMEE -RunCommandName MyRunCommand -Location EastUS2EUAP -SourceScriptUri "https://myst.blob.core.windows.net/mycontainer/myscript.ps1?sp=r&st=2022-10-27T21:02:35Z&se=2022-10-28T05:02:35Z&spr=https&sv=2021-06-08&sr=b&sig=0I%2FIiYayRwHasfasasfdasdfasdeTsQjLnpZjA%3D"

Location      Name         Type
--------      ----         ----
eastus2euap   MyRunCommand Microsoft.Compute/virtualMachines/runCommands

.ps1 スクリプトを含むストレージ BLOB の SAS URL を使用して、Windows VM で実行コマンドを作成または更新します。 SAS URL は、BLOB への読み取りアクセスを提供する必要がある点にご注意ください。 SAS URL の有効期限は 24 時間にすることをお勧めします。 SAS URL は、BLOB のオプションを使用して Azure portal で生成することも、New-AzStorageBlobSASToken を使用して SAS トークンを生成することもできます。 New-AzStorageBlobSASToken を使用して SAS トークンを生成する場合、SAS URL = ベース BLOB URL + "?" + New-AzStorageBlobSASToken からの SAS トークン。

例 2: ローカル スクリプト ファイルを使用して VM で実行コマンドを作成または更新する。

Set-AzVMRunCommand -ResourceGroupName MyRG0 -VMName MyVMEE -RunCommandName MyRunCommand -Location EastUS2EUAP -ScriptLocalPath "C:\MyScriptsDir\MyScript.ps1"

Location      Name         Type
--------      ----         ----
eastus2euap   MyRunCommand Microsoft.Compute/virtualMachines/runCommands

コマンドレットが実行されるクライアント コンピューター上にあるローカル スクリプト ファイルを使用して、VM で実行コマンドを作成または更新します。

例 3: スクリプト テキストを使用して VM で実行コマンドを作成または更新する。

Set-AzVMRunCommand -ResourceGroupName MyRG0 -VMName MyVML -RunCommandName MyRunCommand2 -Location EastUS2EUAP -SourceScript "id; echo HelloWorld"

Location      Name          Type
--------      ----          ----
eastus2euap   MyRunCommand2 Microsoft.Compute/virtualMachines/runCommands

スクリプト コンテンツを -SourceScript パラメーターに直接渡す VM で実行コマンドを作成または更新します。 複数のコマンドを区切るには、';' を使用します。

例 4: commandId を使用して VM で Run Command を作成または更新する。

Set-AzVMRunCommand -ResourceGroupName MyRG0 -VMName MyVMEE -RunCommandName MyRunCommand -Location EastUS2EUAP -SourceCommandId DisableWindowsUpdate

Location      Name         Type
--------      ----         ----
eastus2euap   MyRunCommand Microsoft.Compute/virtualMachines/runCommands

既存の commandId を使用して、VM で実行コマンドを作成または更新します。 使用可能な commandId は、Get-AzVMRunCommandDocument を使用して取得できます。

例 5: VM で実行コマンドを作成または更新し、標準出力と標準エラー メッセージをストリームして、出力とエラーの追加 BLOB にストリームします。

Set-AzVMRunCommand -ResourceGroupName MyRG0 -VMName MyVML -RunCommandName MyRunCommand3 -Location EastUS2EUAP -ScriptLocalPath "C:\MyScriptsDir\MyScript.ps1" -OutputBlobUri "https://vivst.blob.core.windows.net/vivcontainer/output.txt?sp=racw&st=2022-10-27T22:18:36Z&se=2022-10-28T06:18:36Z&spr=https&sv=2021-06-08&sr=b&sig=HQAu3Bl%2BKMofYTjMo8o5hasfadsfasdF4jIkRJra4S5FlEo%3D" -ErrorBlobUri "https://vivst.blob.core.windows.net/vivcontainer/error.txt?sp=racw&st=2022-10-27T22:18:36Z&se=2022-10-28T06:18:36Z&spr=https&sv=2021-06-08&sr=b&sig=HQAu3Bl%2BKMofYTjMo8o5h%asfasdfgdT%2F4jasfasdf5FlEo%3D"

Location      Name          Type
--------      ----         ----
eastus2euap   MyRunCommand3 Microsoft.Compute/virtualMachines/runCommands

VM で実行コマンドを作成または更新し、標準出力と標準エラー メッセージを出力およびエラー追加 BLOB にストリーミングします。 出力 BLOB とエラー BLOB は AppendBlob 型である必要があり、SAS URL は BLOB への読み取り、追加、作成、書き込みアクセスを提供する必要があります。 SAS URL の有効期限は 24 時間にすることをお勧めします。 出力またはエラー BLOB が存在しない場合は、AppendBlob 型の BLOB が作成されます。 SAS URL は、BLOB のオプションを使用して Azure portal で生成することも、New-AzStorageBlobSASToken を使用して SAS トークンを生成することもできます。 New-AzStorageBlobSASToken を使用して SAS トークンを生成する場合、SAS URL = ベース BLOB URL + "?" + New-AzStorageBlobSASToken からの SAS トークン。

例 6: VM で実行コマンドを作成または更新し、RunAsUser パラメーターと RunAsPassword パラメーターを使用して別のユーザーとして実行コマンドを実行します。

Set-AzVMRunCommand -ResourceGroupName MyRG0 -VMName MyVMEE -RunCommandName MyRunCommand -Location EastUS2EUAP -ScriptLocalPath "C:\MyScriptsDir\MyScript.ps1" -RunAsUser myusername -RunAsPassword mypassword

Location      Name         Type
--------      ----         ----
eastus2euap   MyRunCommand Microsoft.Compute/virtualMachines/runCommands

VM で実行コマンドを作成または更新し、RunAsUser パラメーターと RunAsPassword パラメーターを使用して別のユーザーとして実行コマンドを実行します。 RunAs が正常に機能するには、VM の管理者にお問い合わせいただき、VM にユーザーが追加されていること、ユーザーが実行コマンド (ディレクトリ、ファイル、ネットワークなど) によってアクセスされたリソースにアクセスできること、また、Windows VM の場合は、VM で "セカンダリ ログオン" サービスが実行されていることをご確認ください。

パラメーター

-AsJob

コマンドをジョブとして実行する

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AsyncExecution

省略可能。 true に設定すると、スクリプトが開始されるとすぐにプロビジョニングが完了し、スクリプトが完了するまで待機しません。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

DefaultProfile パラメーターは機能しません。 別のサブスクリプションに対してコマンドレットを実行する場合は、使用可能な場合は SubscriptionId パラメーターを使用します。

Type:PSObject
Aliases:AzureRMContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ErrorBlobManagedIdentityClientId

ユーザー割り当てマネージド ID のクライアント ID (GUID 値)。 ObjectId を指定する場合は使用しないでください。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ErrorBlobManagedIdentityObjectId

ユーザー割り当てマネージド ID のオブジェクト ID (GUID 値)。 これが指定されている場合は、ClientId を使用しないでください。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ErrorBlobUri

スクリプト エラー ストリームをアップロードする Azure Storage BLOB を指定します。 読み取り、追加、作成、書き込みアクセス権を持つ SAS URI を使用するか、マネージド ID を使用して VM に BLOB へのアクセスを提供します。 errorBlobManagedIdentity パラメーターを参照します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Location

リソースの場所

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NoWait

コマンドを非同期的に実行する

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OutputBlobManagedIdentityClientId

ユーザー割り当てマネージド ID のクライアント ID (GUID 値)。 ObjectId を指定する場合は使用しないでください。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OutputBlobManagedIdentityObjectId

ユーザー割り当てマネージド ID のオブジェクト ID (GUID 値)。 これが指定されている場合は、ClientId を使用しないでください。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OutputBlobUri

スクリプト出力ストリームをアップロードする Azure Storage BLOB を指定します。 読み取り、追加、作成、書き込みアクセス権を持つ SAS URI を使用するか、マネージド ID を使用して VM に BLOB へのアクセスを提供します。 outputBlobManagedIdentity パラメーターを参照します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Parameter

スクリプトで使用されるパラメーター。 構築するには、PARAMETER プロパティの NOTES セクションを参照し、ハッシュ テーブルを作成します。

Type:IRunCommandInputParameter[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ProtectedParameter

スクリプトで使用されるパラメーター。 構築するには、PROTECTEDPARAMETER プロパティの NOTES セクションを参照し、ハッシュ テーブルを作成します。

Type:IRunCommandInputParameter[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

リソース グループの名前。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-RunAsPassword

実行コマンドの実行時に VM のユーザー アカウント パスワードを指定します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsUser

実行コマンドの実行時に VM 上のユーザー アカウントを指定します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunCommandName

仮想マシンの実行コマンドの名前。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ScriptLocalPath

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ScriptUriManagedIdentityClientId

ユーザー割り当てマネージド ID のクライアント ID (GUID 値)。 ObjectId を指定する場合は使用しないでください。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ScriptUriManagedIdentityObjectId

ユーザー割り当てマネージド ID のオブジェクト ID (GUID 値)。 これが指定されている場合は、ClientId を使用しないでください。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SourceCommandId

定義済みの組み込みスクリプトの commandId を指定します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SourceScript

VM で実行するスクリプトコンテンツを指定します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SourceScriptUri

スクリプトのダウンロード場所を指定します。 読み取りアクセス権を持つ Azure ストレージ BLOB の SAS URI またはパブリック URI のいずれかを指定できます。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SubscriptionId

Microsoft Azure サブスクリプションを一意に識別するサブスクリプション資格情報。 サブスクリプション ID は、全ての修理依頼についてURI の一部を生じさせます。

Type:String
Position:Named
Default value:(Get-AzContext).Subscription.Id
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tag

リソース タグ

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TimeoutInSecond

run コマンドを実行するためのタイムアウト (秒単位)。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TreatFailureAsDeploymentFailure

省略可能。 true に設定すると、スクリプト内のエラーはデプロイに失敗し、ProvisioningState は Failed としてマークされます。 false に設定すると、ProvisioningState は、実行コマンドが拡張機能プラットフォームによって実行されたかどうかのみを反映し、スクリプトが失敗した場合にスクリプトが失敗したかどうかを示しません。 スクリプトエラーが発生した場合は、run コマンドのインスタンス ビューを参照して、executionMessage、output、error を表示します。 https://aka.ms/runcommandmanaged#get-execution-status-and-results

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VMName

実行コマンドを作成または更新する必要がある仮想マシンの名前。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

出力

IVirtualMachineRunCommand