共用方式為


Virtual Machine Run Commands - Update

更新執行命令的作業。

PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommands/{runCommandName}?api-version=2024-07-01

URI 參數

名稱 位於 必要 類型 Description
resourceGroupName
path True

string

資源群組的名稱。

runCommandName
path True

string

虛擬機執行命令的名稱。

subscriptionId
path True

string

可唯一識別Microsoft Azure 訂用帳戶的訂用帳戶認證。 訂用帳戶標識碼會形成每個服務呼叫 URI 的一部分。

vmName
path True

string

應該更新執行命令之虛擬機的名稱。

api-version
query True

string

用戶端 API 版本。

要求本文

Media Types: "application/json", "text/json"

名稱 類型 Description
properties.asyncExecution

boolean

自選。 如果設定為 true,則一開始腳本就會完成布建,且不會等待腳本完成。

properties.errorBlobManagedIdentity

RunCommandManagedIdentity

使用者指派的受控識別可存取 errorBlobUri 記憶體 Blob。 在系統指派的身分識別的情況下,請使用空白物件。 請確定受控識別已獲得 Blob 容器的存取權,並具有「記憶體 Blob 數據參與者」角色指派。 如果是使用者指派的身分識別,請務必將其新增到 VM 的身分識別之下。 如需受控識別和執行命令的詳細資訊,請參閱 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

properties.errorBlobUri

string

指定將上傳文稿錯誤數據流的 Azure 記憶體 Blob。 使用具有讀取、附加、建立、寫入存取權的SAS URI,或使用受控識別來提供 Blob 的 VM 存取權。 請參閱 errorBlobManagedIdentity 參數。

properties.outputBlobManagedIdentity

RunCommandManagedIdentity

使用者指派的受控識別可存取 outputBlobUri 記憶體 Blob。 在系統指派的身分識別的情況下,請使用空白物件。 請確定受控識別已獲得 Blob 容器的存取權,並具有「記憶體 Blob 數據參與者」角色指派。 如果是使用者指派的身分識別,請務必將其新增到 VM 的身分識別之下。 如需受控識別和執行命令的詳細資訊,請參閱 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

properties.outputBlobUri

string

指定將上傳文本輸出數據流的 Azure 記憶體 Blob。 使用具有讀取、附加、建立、寫入存取權的SAS URI,或使用受控識別來提供 Blob 的 VM 存取權。 請參閱 outputBlobManagedIdentity 參數。

properties.parameters

RunCommandInputParameter[]

腳本所使用的參數。

properties.protectedParameters

RunCommandInputParameter[]

腳本所使用的參數。

properties.runAsPassword

string

在執行執行命令時,指定 VM 上的使用者帳戶密碼。

properties.runAsUser

string

在執行執行命令時,指定 VM 上的用戶帳戶。

properties.source

VirtualMachineRunCommandScriptSource

執行命令腳本的來源。

properties.timeoutInSeconds

integer

執行命令的逾時以秒為單位。

properties.treatFailureAsDeploymentFailure

boolean

自選。 如果設定為 true,腳本中的任何失敗都會失敗,且 ProvisioningState 會標示為 Failed。 如果設定為 false,ProvisioningState 只會反映延伸模組平臺是否執行 run 命令,它不會指出腳本在腳本失敗時是否失敗。 在腳本失敗時查看 run 命令的實例檢視,以查看 executionMessage、輸出、錯誤:https://aka.ms/runcommandmanaged#get-execution-status-and-results

tags

object

資源標籤

回應

名稱 類型 Description
200 OK

VirtualMachineRunCommand

還行

Media Types: "application/json", "text/json"

Other Status Codes

CloudError

描述作業失敗原因的錯誤回應。

Media Types: "application/json", "text/json"

安全性

azure_auth

Azure Active Directory OAuth2 Flow

類型: oauth2
Flow: implicit
授權 URL: https://login.microsoftonline.com/common/oauth2/authorize

範圍

名稱 Description
user_impersonation 模擬您的用戶帳戶

範例

Update a run command.

範例要求

PATCH https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand?api-version=2024-07-01

{
  "properties": {
    "source": {
      "script": "Write-Host Hello World! ; Remove-Item C:\test\testFile.txt"
    },
    "parameters": [
      {
        "name": "param1",
        "value": "value1"
      },
      {
        "name": "param2",
        "value": "value2"
      }
    ],
    "asyncExecution": false,
    "runAsUser": "user1",
    "runAsPassword": "<runAsPassword>",
    "timeoutInSeconds": 3600,
    "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/outputUri",
    "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt",
    "errorBlobManagedIdentity": {
      "objectId": "4231e4d2-33e4-4e23-96b2-17888afa6072"
    }
  }
}

範例回覆

{
  "name": "myRunCommand",
  "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/runCommands/myRunCommand",
  "type": "Microsoft.Compute/virtualMachines/runCommands",
  "location": "westus",
  "tags": {
    "tag1": "value1",
    "tag2": "value2"
  },
  "properties": {
    "source": {
      "script": "Write-Host Hello World! ; Remove-Item C:\test\testFile.txt"
    },
    "parameters": [
      {
        "name": "param1",
        "value": "value1"
      },
      {
        "name": "param2",
        "value": "value2"
      }
    ],
    "asyncExecution": false,
    "treatFailureAsDeploymentFailure": false,
    "runAsUser": "user1",
    "timeoutInSeconds": 3600,
    "provisioningState": "Updating",
    "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
    "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
  }
}

定義

名稱 Description
ApiError

Api 錯誤。

ApiErrorBase

API 錯誤基底。

CloudError

來自計算服務的錯誤回應。

ExecutionState

腳本執行狀態。

InnerError

內部錯誤詳細數據。

InstanceViewStatus

實例檢視狀態。

RunCommandInputParameter

描述執行命令參數的屬性。

RunCommandManagedIdentity

包含用戶端識別碼或 objectId(只使用一個,而非兩者)使用者指派的受控識別,可存取執行命令中使用的記憶體 Blob。 在系統指派的身分識別的情況下,請使用空的 RunCommandManagedIdentity 物件。 請確定 Azure 記憶體 Blob 存在於 scriptUri 的情況下,且受控識別已獲得 Blob 容器的存取權,並已使用 scriptUri Blob 的 'Storage Blob Data Reader' 角色指派,以及附加 Blob 的 'Storage Blob 數據參與者'(outputBlobUri,errorBlobUri)。 如果是使用者指派的身分識別,請務必將其新增到 VM 的身分識別之下。 如需受控識別和執行命令的詳細資訊,請參閱 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

StatusLevelTypes

層級程序代碼。

VirtualMachineRunCommand

描述虛擬機執行命令。

VirtualMachineRunCommandInstanceView

虛擬機執行命令的實例檢視。

VirtualMachineRunCommandScriptSource

描述執行命令的腳本來源。 只使用其中一個 script,scriptUri,commandId。

VirtualMachineRunCommandUpdate

描述虛擬機執行命令。

ApiError

Api 錯誤。

名稱 類型 Description
code

string

錯誤碼。

details

ApiErrorBase[]

Api 錯誤詳細數據

innererror

InnerError

Api 內部錯誤

message

string

錯誤訊息。

target

string

特定錯誤的目標。

ApiErrorBase

API 錯誤基底。

名稱 類型 Description
code

string

錯誤碼。

message

string

錯誤訊息。

target

string

特定錯誤的目標。

CloudError

來自計算服務的錯誤回應。

名稱 類型 Description
error

ApiError

Api 錯誤。

ExecutionState

腳本執行狀態。

名稱 類型 Description
Canceled

string

Failed

string

Pending

string

Running

string

Succeeded

string

TimedOut

string

Unknown

string

InnerError

內部錯誤詳細數據。

名稱 類型 Description
errordetail

string

內部錯誤訊息或例外狀況傾印。

exceptiontype

string

例外狀況類型。

InstanceViewStatus

實例檢視狀態。

名稱 類型 Description
code

string

狀態代碼。

displayStatus

string

狀態的簡短可當地語系化標籤。

level

StatusLevelTypes

層級程序代碼。

message

string

詳細的狀態消息,包括警示和錯誤訊息。

time

string

狀態的時間。

RunCommandInputParameter

描述執行命令參數的屬性。

名稱 類型 Description
name

string

執行命令參數名稱。

value

string

run 命令參數值。

RunCommandManagedIdentity

包含用戶端識別碼或 objectId(只使用一個,而非兩者)使用者指派的受控識別,可存取執行命令中使用的記憶體 Blob。 在系統指派的身分識別的情況下,請使用空的 RunCommandManagedIdentity 物件。 請確定 Azure 記憶體 Blob 存在於 scriptUri 的情況下,且受控識別已獲得 Blob 容器的存取權,並已使用 scriptUri Blob 的 'Storage Blob Data Reader' 角色指派,以及附加 Blob 的 'Storage Blob 數據參與者'(outputBlobUri,errorBlobUri)。 如果是使用者指派的身分識別,請務必將其新增到 VM 的身分識別之下。 如需受控識別和執行命令的詳細資訊,請參閱 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

名稱 類型 Description
clientId

string

使用者指派受控識別的用戶端標識碼(GUID 值)。 如果提供此專案,就不應該使用 ObjectId。

objectId

string

使用者指派受控識別的物件標識碼(GUID 值)。 如果提供此專案,就不應該使用 ClientId。

StatusLevelTypes

層級程序代碼。

名稱 類型 Description
Error

string

Info

string

Warning

string

VirtualMachineRunCommand

描述虛擬機執行命令。

名稱 類型 預設值 Description
id

string

資源標識碼

location

string

資源位置

name

string

資源名稱

properties.asyncExecution

boolean

False

自選。 如果設定為 true,則一開始腳本就會完成布建,且不會等待腳本完成。

properties.errorBlobManagedIdentity

RunCommandManagedIdentity

使用者指派的受控識別可存取 errorBlobUri 記憶體 Blob。 在系統指派的身分識別的情況下,請使用空白物件。 請確定受控識別已獲得 Blob 容器的存取權,並具有「記憶體 Blob 數據參與者」角色指派。 如果是使用者指派的身分識別,請務必將其新增到 VM 的身分識別之下。 如需受控識別和執行命令的詳細資訊,請參閱 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

properties.errorBlobUri

string

指定將上傳文稿錯誤數據流的 Azure 記憶體 Blob。 使用具有讀取、附加、建立、寫入存取權的SAS URI,或使用受控識別來提供 Blob 的 VM 存取權。 請參閱 errorBlobManagedIdentity 參數。

properties.instanceView

VirtualMachineRunCommandInstanceView

虛擬機執行命令實例檢視。

properties.outputBlobManagedIdentity

RunCommandManagedIdentity

使用者指派的受控識別可存取 outputBlobUri 記憶體 Blob。 在系統指派的身分識別的情況下,請使用空白物件。 請確定受控識別已獲得 Blob 容器的存取權,並具有「記憶體 Blob 數據參與者」角色指派。 如果是使用者指派的身分識別,請務必將其新增到 VM 的身分識別之下。 如需受控識別和執行命令的詳細資訊,請參閱 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

properties.outputBlobUri

string

指定將上傳文本輸出數據流的 Azure 記憶體 Blob。 使用具有讀取、附加、建立、寫入存取權的SAS URI,或使用受控識別來提供 Blob 的 VM 存取權。 請參閱 outputBlobManagedIdentity 參數。

properties.parameters

RunCommandInputParameter[]

腳本所使用的參數。

properties.protectedParameters

RunCommandInputParameter[]

腳本所使用的參數。

properties.provisioningState

string

只出現在回應中的布建狀態。 如果 treatFailureAsDeploymentFailure 設為 true,腳本中的任何失敗都會失敗,且 ProvisioningState 會標示為 Failed。 如果 treatFailureAsDeploymentFailure 設為 false,ProvisioningState 只會反映執行命令是否由延伸模組平台執行,而不會指出腳本失敗時是否失敗。 在腳本失敗時查看 run 命令的實例檢視,以查看 executionMessage、輸出、錯誤:https://aka.ms/runcommandmanaged#get-execution-status-and-results

properties.runAsPassword

string

在執行執行命令時,指定 VM 上的使用者帳戶密碼。

properties.runAsUser

string

在執行執行命令時,指定 VM 上的用戶帳戶。

properties.source

VirtualMachineRunCommandScriptSource

執行命令腳本的來源。

properties.timeoutInSeconds

integer

執行命令的逾時以秒為單位。

properties.treatFailureAsDeploymentFailure

boolean

False

自選。 如果設定為 true,腳本中的任何失敗都會失敗,且 ProvisioningState 會標示為 Failed。 如果設定為 false,ProvisioningState 只會反映延伸模組平臺是否執行 run 命令,它不會指出腳本在腳本失敗時是否失敗。 在腳本失敗時查看 run 命令的實例檢視,以查看 executionMessage、輸出、錯誤:https://aka.ms/runcommandmanaged#get-execution-status-and-results

tags

object

資源標籤

type

string

資源類型

VirtualMachineRunCommandInstanceView

虛擬機執行命令的實例檢視。

名稱 類型 Description
endTime

string

腳本結束時間。

error

string

文稿錯誤數據流。

executionMessage

string

傳達文本組態錯誤或執行訊息。

executionState

ExecutionState

腳本執行狀態。

exitCode

integer

從腳本執行傳回的結束代碼。

output

string

腳本輸出數據流。

startTime

string

腳本開始時間。

statuses

InstanceViewStatus[]

資源狀態資訊。

VirtualMachineRunCommandScriptSource

描述執行命令的腳本來源。 只使用其中一個 script,scriptUri,commandId。

名稱 類型 Description
commandId

string

指定預先定義內建腳本的 commandId。

script

string

指定要在 VM 上執行的文稿內容。

scriptUri

string

指定文稿下載位置。 它可以是具有讀取許可權或公用 URI 的 Azure 記憶體 Blob SAS URI。

scriptUriManagedIdentity

RunCommandManagedIdentity

使用者指派的受控識別,可存取 Azure 記憶體 Blob 時可存取 scriptUri。 在系統指派的身分識別的情況下,請使用空白物件。 請確定 Azure 記憶體 Blob 存在,且受控識別已獲授與具有「記憶體 Blob 數據讀取者」角色指派之 Blob 容器的存取權。 如果是使用者指派的身分識別,請務必將其新增到 VM 的身分識別之下。 如需受控識別和執行命令的詳細資訊,請參閱 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

VirtualMachineRunCommandUpdate

描述虛擬機執行命令。

名稱 類型 預設值 Description
properties.asyncExecution

boolean

False

自選。 如果設定為 true,則一開始腳本就會完成布建,且不會等待腳本完成。

properties.errorBlobManagedIdentity

RunCommandManagedIdentity

使用者指派的受控識別可存取 errorBlobUri 記憶體 Blob。 在系統指派的身分識別的情況下,請使用空白物件。 請確定受控識別已獲得 Blob 容器的存取權,並具有「記憶體 Blob 數據參與者」角色指派。 如果是使用者指派的身分識別,請務必將其新增到 VM 的身分識別之下。 如需受控識別和執行命令的詳細資訊,請參閱 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

properties.errorBlobUri

string

指定將上傳文稿錯誤數據流的 Azure 記憶體 Blob。 使用具有讀取、附加、建立、寫入存取權的SAS URI,或使用受控識別來提供 Blob 的 VM 存取權。 請參閱 errorBlobManagedIdentity 參數。

properties.instanceView

VirtualMachineRunCommandInstanceView

虛擬機執行命令實例檢視。

properties.outputBlobManagedIdentity

RunCommandManagedIdentity

使用者指派的受控識別可存取 outputBlobUri 記憶體 Blob。 在系統指派的身分識別的情況下,請使用空白物件。 請確定受控識別已獲得 Blob 容器的存取權,並具有「記憶體 Blob 數據參與者」角色指派。 如果是使用者指派的身分識別,請務必將其新增到 VM 的身分識別之下。 如需受控識別和執行命令的詳細資訊,請參閱 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

properties.outputBlobUri

string

指定將上傳文本輸出數據流的 Azure 記憶體 Blob。 使用具有讀取、附加、建立、寫入存取權的SAS URI,或使用受控識別來提供 Blob 的 VM 存取權。 請參閱 outputBlobManagedIdentity 參數。

properties.parameters

RunCommandInputParameter[]

腳本所使用的參數。

properties.protectedParameters

RunCommandInputParameter[]

腳本所使用的參數。

properties.provisioningState

string

只出現在回應中的布建狀態。 如果 treatFailureAsDeploymentFailure 設為 true,腳本中的任何失敗都會失敗,且 ProvisioningState 會標示為 Failed。 如果 treatFailureAsDeploymentFailure 設為 false,ProvisioningState 只會反映執行命令是否由延伸模組平台執行,而不會指出腳本失敗時是否失敗。 在腳本失敗時查看 run 命令的實例檢視,以查看 executionMessage、輸出、錯誤:https://aka.ms/runcommandmanaged#get-execution-status-and-results

properties.runAsPassword

string

在執行執行命令時,指定 VM 上的使用者帳戶密碼。

properties.runAsUser

string

在執行執行命令時,指定 VM 上的用戶帳戶。

properties.source

VirtualMachineRunCommandScriptSource

執行命令腳本的來源。

properties.timeoutInSeconds

integer

執行命令的逾時以秒為單位。

properties.treatFailureAsDeploymentFailure

boolean

False

自選。 如果設定為 true,腳本中的任何失敗都會失敗,且 ProvisioningState 會標示為 Failed。 如果設定為 false,ProvisioningState 只會反映延伸模組平臺是否執行 run 命令,它不會指出腳本在腳本失敗時是否失敗。 在腳本失敗時查看 run 命令的實例檢視,以查看 executionMessage、輸出、錯誤:https://aka.ms/runcommandmanaged#get-execution-status-and-results

tags

object

資源標籤