如何从PowerShell函数返回自定义对象?

时间:2019-07-19 17:21:37

标签: powershell cmdlets

我试图从PowerShell中的函数返回自定义对象(在C#cmdlet中定义)。我没有得到自定义对象,而是得到了object []。我验证了,如果我仅调用cmdlet,它将返回自定义对象的实例。

我尝试使用Write-Outputreturn,但听起来Write-Output是我要在这里使用的。

function Get-Data {
    param($id)
    $data = Measure-Unit -id $id
    $data | Save-Data -file "" # this cmdlet returns an integer
    Write-Output $data
}

$r = Get-Data -id 1

我希望$r.GetType()确认$r的类型为MyObject,但是$r的类型为object[]。我已经确认$ data和Measure-Unit的输出为MyObject类型。如何从PowerShell函数输出/返回类型为MyObject的对象?

更新:Save-Data cmdlet中的整数似乎是数据输出的一部分。我该如何忽略呢?

0 个答案:

没有答案