本文介紹在自定義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,我們在開發的過程中應該繼承并發揚這一風格。
關于PowerShell函數通過管道接收參數,本文就介紹這么多,希望對您有所幫助,謝謝!