You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Set-AzVMRunCommand创建成功,Invoke-AzVMRunCommand调用失败求助

解决自定义RunCommand调用404的问题

问题根源

Invoke-AzVMRunCommand的-CommandId参数不接受自定义RunCommand的ARM资源ID,而是需要使用该命令的短标识符(commandId)——这个值是创建RunCommand时生成的,可通过列表命令获取。

步骤1:获取正确的commandId

执行以下Azure CLI命令,找到你创建的foobar命令,提取输出中的commandId字段值(注意不是id字段的ARM路径):

az vm run-command list --resource-group <你的资源组名> --vm-name <你的VM名> --query "[?name=='foobar'].commandId" -o tsv

返回值类似Custom_foobar,这才是调用时需要的CommandId。

步骤2:正确调用Invoke-AzVMRunCommand

使用提取到的commandId执行调用,示例PowerShell命令:

# 基础调用
Invoke-AzVMRunCommand -ResourceGroupName "<资源组名>" -VMName "<VM名>" -CommandId "<提取到的commandId>"

# 带参数的调用(如果脚本需要参数)
Invoke-AzVMRunCommand -ResourceGroupName "<资源组名>" -VMName "<VM名>" -CommandId "<提取到的commandId>" `
  -Parameter @{"paramKey1"="paramValue1"; "paramKey2"="paramValue2"}

多次调用说明

自定义RunCommand创建后可重复调用,只要VM处于运行状态,直接使用同一个commandId即可。若需要更新脚本内容,执行Set-AzVMRunCommand修改该命令,后续调用仍使用原commandId。

内容的提问来源于stack exchange,提问作者Node.JS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 06:43:16