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

如何从Azure函数、REST API或多语言实现Azure虚拟机脚本执行?

问题解答

1. 能否不编写自定义脚本/包,直接通过REST API实现操作?

可以直接通过Azure官方REST API实现,无需自定义脚本或额外包。核心是调用Microsoft.Compute/virtualMachines/runCommand API:

  • 先获取有效的Azure AD访问令牌完成身份验证
  • 根据VM类型选择对应commandId:Windows VM用RunBatchScript(执行批处理)或RunPowerShellScript;Linux VM用RunShellScript
  • 在请求体中指定要执行的脚本内容,或者脚本的存储URI(如Azure Blob中的脚本路径)
  • 发送POST请求到目标VM的runCommand端点,即可远程触发脚本执行

2. 除PowerShell外,能否通过.NET Core、Java或Python实现上述功能?

完全可以,这几种语言都能借助Azure官方管理SDK简化操作,本质都是调用Azure虚拟机运行命令接口:
-.NET Core:使用Azure.ResourceManager.Compute NuGet包,通过VirtualMachine对象的GetRunCommands方法创建运行命令资源,传入脚本内容和命令ID后提交执行
-Java:使用Azure SDK for Java的azure-resourcemanager-compute依赖,通过VirtualMachinesClient的beginRunCommand方法,构造RunCommandInput参数指定脚本和命令类型
-Python:安装azure-mgmt-compute包,调用virtual_machines.run_command方法,传入资源组、VM名称及包含command_id和script的参数对象

内容的提问来源于stack exchange,提问作者Krishnan Sriram

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 22:52:41