如何获取Invoke-AzureRmVMRunCommand命令的输出流?

时间:2019-04-01 15:19:33

标签: azure powershell

我正在尝试运行以下命令

Invoke-AzVMRunCommand -ResourceGroupName $instance.ResourceGroupName -Name $instance.Name -CommandId 'RunPowerShellScript' -ScriptPath 'C:\Users\tushar.raichand\Desktop\sample.ps1'

Sample.ps1如下

$output = Get-LocalUser
Write-Output $output
$output

我为Invoke-AzVMRunCommand获得的输出是

Microsoft.Azure.Commands.Compute.Automation.Models.PSRunCommandResult

1 个答案:

答案 0 :(得分:0)

首先,请确保您具有足够的权限来显示命令的详细信息,请参见Limiting access to Run Command

  

列出运行命令或显示命令的详细信息需要Microsoft.Compute/locations/runCommands/read权限,内置Reader角色及更高角色具有此权限。

此外,命令Invoke-AzureRmVMRunCommand属于已弃用的AzureRM powershell模块,您可能需要将其升级到新的Az模块,请参考此{{3} }进行升级。

我使用新的Az命令link测试了脚本,效果很好。

Invoke-AzVMRunCommand -ResourceGroupName joywebapp -Name joyVM -CommandId 'RunPowerShellScript' -ScriptPath 'C:\Users\joyw\Desktop\sample.ps1'

sample.ps1

$output = Get-LocalUser
Write-Output $output

结果

Invoke-AzVMRunCommand