PowerShell接收多个输入 3


支持全部的Powershell版本:

当你创建一个Powershell函数,这里有个样板定义了一个输入参数它能通过参数或管道符接收多个值:

function Get-Something
{
  param
  (
    [Parameter(Mandatory=$true,ValueFromPipeline=$true)]
    [Object[]]
    $InputObject 
  )
  
  process
  {
    $InputObject | ForEach-Object {
      $element = $_
      "processing $element"
    }
  }
}

同时这里是函数的动作:

PS> Get-Something -InputObject 1,2,3,4
processing 1
processing 2
processing 3
processing 4

PS> 1,2,3,4 | Get-Something
processing 1
processing 2
processing 3
processing 4

注意怎么将参数定义成数组一样(这样能接收多个参数值)。接下来的代码,参数中值通过使用ForEach-Object去处理每个独特元素。其中用逗号分割多个值与第一个命令例子意思差不多。

要通过管道接收多个值,请确保你从管道传入的参数,接着,添加一个Process脚本块到你的函数。它作为一个循环,它类似于ForEach-Object去处理每个管道对象。

原文地址: Accepting Multiple Input

本文链接: https://www.pstips.net/accepting-multiple-input.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

3 条评论 “PowerShell接收多个输入