我需要一个接一个地运行两个powershell命令,我应该创建一个管道两次还是有更好的选择?感谢
Runspace myRunSpace = RunspaceFactory.CreateRunspace(rc);
myRunSpace.Open();
Pipeline pipeLine = myRunSpace.CreatePipeline();
using (pipeLine)
{
Command myCommand = new Command("Get-Command...");
}
Pipeline pipeLine2 = myRunSpace.CreatePipeline();
using (pipeLine2)
{
Command myCommand = new Command("Get-Command...");
}
答案 0 :(得分:1)
根据msdn,管道就像一个“装配线”,所以如果第一个命令的结果与第二个命令无关,你不需要管道,你可以改用ScriptBlock,使用RunspaceInvoke对象调用它。
查看示例here。
答案 1 :(得分:0)
如果你写了:
,你会对你的代码感到满意吗?using (Pipeline pipeLine = myRunSpace.CreatePipeline())
{
Command myCommand = new Command("Get-Command...");
}