首页 > 解决方案 > 使用参数对象调用 Powershell 函数

问题描述

是否可以像这样创建一个对象

    $Data = new-object PSObject
    $Data | Add-member NoteProperty -Name "SiteName" -Value "Web Title"
    $Data | Add-member NoteProperty -Name "SiteURL" -Value "https://www.test.url"

然后以某种方式调用一个函数

Do-CustomFunction $Data

这将解包对象并将其属性用作命名参数,以模拟以下行为:

Do-CustomFunction -SiteName "Web Title" -SiteURL "https://www.test.url"

标签: powershell

解决方案


您正在寻找about_splatting链接

例子:

function mytest{
    param($path1,$path2)
    write-host $path1 $path2
}

$commands = @{
    path1 = "C:\temp\test.txt"
    path2 = "C:\temp\test2.txt"
}

mytest @commands

@请注意在调用函数时使用 an 引用哈希表。


推荐阅读