我在弄清楚如何发送用于设置-ComputerName变量的参数时遇到一些麻烦。
有什么办法吗?以下是我想发生的事情
function doStuff{
param([string]$hostName)
Invoke-Command -ComputerName $HostName { #operate on host }
}
相关c#:
var fileContents = GetScriptFileContents("doStuffScript.txt");
using (PowerShell ps = PowerShell.Create())
{
ps.AddScript(doStuffScript);
ps.Invoke();
ps.Commands.Clear();
ps.AddCommand("doStuff").AddParameter("hostName", "serverNameHere");
var results = ps.Invoke();
}
此脚本将从c#控制台应用程序中调用,因此我不想从文本文件中获取服务器名称,需要将其发送到powershell脚本的函数中。这似乎应该很容易,否则我可能没有头脑!
如果我理解正确,您只想使用定义的参数执行功能:
doStuff -hostName "<insert the hostname here>"