PowerShell中的$Input变量使用实例

本文介绍在自定义PowerShell函数时,有一个$Input变量,这是一个系统自带的变量,它表示以块结构输入的管道数据。

先看看这个$Input变量在函数中是如何使用的。


function Test-Pipeline {

    $pipelineData = @($Input)

    $Count = $pipelineData.Count

    “Received $Count elements: $pipelineData”

}


运行结果如下:

PS> 1..10 | Test-Pipeline

Received 10 elements: 1 2 3 4 5 6 7 8 9 10


上面例子中,先将$Input变量转换为一个数组(即变量$pipelineData),这样做的好处是后面可以任意的使用$pipelineData变量。大家可能有疑问,什么叫任意使用$pipelineData变量,难道$Input变量不能任意使用?呵呵,说对了!$Input变量只能使用一次!如果不将它赋值给别的变量,那第二次使用到这个$Input变量时,你会怀疑你的眼睛。不信且看:

function Test-Pipeline {

    $Count = $Input.Count

    “Received $Count elements: $Input”

}

PS> 1..10 | Test-Pipeline Received 1 1 1 1 1 1 1 1 1 1 elements:


这个神奇的$Input变量,总的来说,它可以将管道输入以块结构接收,并且只能读一次。

关于PowerShell函数中的$Input变量,本文就介绍这么多,希望对您有所帮助,谢谢!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。