PowerShell 每个对象
示例
该ForEach-Objectcmdlet的工作原理类似于该foreach语句,但从管道中获取其输入。
基本用法
$object | ForEach-Object {
code_block
}例:
$names = @("Any","Bob","Celine","David")
$names | ForEach-Object {
"Hi, my name is $_!"
}Foreach-Object有两个默认别名,foreach和%(简写语法)。最常见的是%因为foreach可以与foreach语句混淆。例子:
$names | % {
"Hi, my name is $_!"
}
$names | foreach {
"Hi, my name is $_!"
}高级用法
Foreach-Object从替代foreach解决方案中脱颖而出,因为它是一个cmdlet,这意味着它旨在使用管道。因此,它像cmdlet或高级功能一样支持三个脚本块:
开始:循环遍历从管道到达的项目之前执行一次。通常用于创建用于循环的函数,创建变量,打开连接(数据库,Web+)等。
流程:每个项目从管道中执行一次。“正常”foreach代码块。未指定参数时,这是以上示例中使用的默认值。
结束:处理完所有项目后执行一次。通常用于关闭连接,生成报告等。
例:
"Any","Bob","Celine","David" | ForEach-Object -Begin {
$results = @()
} -Process {
#Create and store message
$results += "Hi, my name is $_!"
} -End {
#Count messages and output
Write-Host "Total messages: $($results.Count)"
$results
}
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短