PowerShell脚本中的参数化-ComputerName

问题描述 投票:0回答:1

我在弄清楚如何发送用于设置-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脚本的函数中。这似乎应该很容易,否则我可能没有头脑!

powershell powershell-remoting
1个回答
0
投票

如果我理解正确,您只想使用定义的参数执行功能:

doStuff -hostName "<insert the hostname here>"
© www.soinside.com 2019 - 2024. All rights reserved.