PowerShell函数如何接收管道参数?实例

发布时间:2019-12-11编辑:脚本学堂
本文介绍了自定义PowerShell函数时,设置函数通过管道(Pipeline)接收输入参数的方法,需要的朋友参考下。

自定义Powershell函数时,设置函数通过管道(Pipeline)接收输入参数。

例子,用管道作为输入参数的函数:
 

复制代码 代码示例:
function Test-Pipeline {
    param(
        [Parameter(ValueFromPipeline=$true)]
        $InputObject
    )
    process
    {
        “Working with $InputObject”
    }
}

使用管道作为输入参数,函数的执行情况:
 

复制代码 代码示例:
PS> 1..4 | Test-Pipeline
Working with 1
Working with 2
Working with 3
Working with 4

在Test-Pipeline函数中,InputObject是一个接收管道输入的参数。
InputObject参数之前,用了[Parameter(ValueFromPipeline=$true)]这个条指令,从指令的名称来看,就发现了ValueFromPipeline,表示从管道获取值。

另外,在powershell所有的系统自带函数中,从管道获取值的参数名称都叫InputObject,在开发的过程中应该继承并发扬这一风格。