[英]Powershell commands from C# 'the term is not recognizes as cmdlet'
[英]Running basic PowerShell commands in C# error cmdlet not found
我有一个C#控制台程序,并且我想运行PowerShell命令NOT SCRIPTS,但是无论我尝试在PowerShell运行空间中运行什么命令,都会收到一条错误消息,指出未找到cmdlet。 它可以很简单,如下所示:
static void Main(string[] args)
{
try
{
using (Runspace runspace = RunspaceFactory.CreateRunspace())
{
runspace.Open();
PowerShell ps = PowerShell.Create();
ps.Runspace = runspace;
ps.AddCommand("(Get-Date).AddDays(1)");
var result = ps.Invoke();
Console.WriteLine(result);
}
}
catch (Exception ex)
{
Console.WriteLine("Error: " + ex.ToString());
}
}
我可以在PowerShell命令行中键入此命令,它运行得很好。 我不必添加任何模块即可运行它。 我想念什么?
一个命令将仅是Get-Date
。 当您使用AddCommand时,这就是您所期望的。 例如,
ps.AddCommand("Get-Date").AddParameter("Format", "u").Invoke();
您有一个脚本,并且它不容易放入AddCommand(因为它不是一个)。 改用Tty AddScript:
ps.AddScript("(Get-Date).AddDays(1)").Invoke();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.