我正在尝试构建一个 C# 控制台应用程序,该应用程序执行一系列针对 Azure 订阅运行的 PowerShell 命令。
var line1 = "$cred = Get-Credential"
var line2 = "Add-AzureAccount -Credential $cred"
var psi = PowerShell.Create()
psi.AddCommand(line1);
psi.AddCommand(line2);
var output = psi.Invoke();
我以为它会呈现一个交互式登录框,然后继续运行。相反,这是抛出:
System.Management.Automation.dll 中出现“System.Management.Automation.CommandNotFoundException”类型的未处理异常附加信息:术语“$cred = Get-Credential”未被识别为 cmdlet、函数、脚本文件的名称, 或可操作...
如果我从 CMD 启动 PowerShell,然后键入
$cred = 获取凭据
我看到了默认的交互式登录框,用户可以输入凭据,它们被捕获到 $cred 并且我可以继续。
什么是在 C# 中使其工作的正确命令集?
谢谢。