处理管道中的多个参数
powershell吧
全部回复
仅看楼主
level 8
hadstj 楼主
处理管道中的多个参数
通常管道中传来的参数是一个。如果有多个参数,处理起来就有点麻烦。
我们知道,$_ 表示的是每一条数据,那么,$_[0], $_[1],...就分别代表这条数据的每一项。
这样,我们只要把数据按数组的形式传递给管道就可以了。
function test-MutilParams
{
Begin
{
$i=0
}
Process
{
"正在处理第 $($i+1) 条数据: $_ ..."
" 第 1 项: $($_[0]), 第 2 项: $($_[1]), 第 3 项: $($_[2])"
$i++
}
End
{
"共处理了 $i 条数据"
}
}
$(1, "aa"),$(2; "bb"; 1.23),$(3; "cc"; 3.14) | test-MutilParams
2014年02月27日 03点02分 1
level 3
$x=@('x','y','z'),@('a','b','c')
$x[0][0]
$x[0][1]
$x[0][2]
结果:
x
y
z
---------------------------------------
$x|%{
$($_[0]) *1
$($_[1]) *2
$($_[2]) *3
}
结果:
x
yy
zzz
a
bb
ccc
-----------------------------------
数组中的元素也是数组的情况!
2014年03月01日 08点03分 2
1