首页/系统/Windows 运维速查/ForEach-Object 逐项处理
本包目录(413 条)
CMD 常用命令74 条
PowerShell 基础66 条
网络排查41 条服务与进程42 条磁盘与文件43 条用户与权限34 条AD 域与组策略39 条日志与事件38 条远程管理36 条

ForEach-Object 逐项处理

对管道中每个对象执行操作:可直接调用方法,也可在脚本块里用 $_ 计算(PS7 起支持 -Parallel 并发)。

Windows 运维速查系统更新于 2026-10-12
用途逐项执行操作或计算
语法ForEach-Object { <处理逻辑> };别名 %
PS7 扩展-Parallel 并发执行;-ThrottleLimit 控制并发数

常用示例

常用示例
Get-Service | Where-Object Status -eq Stopped | ForEach-Object { $_.Name }
Get-ChildItem *.log | ForEach-Object { $_.Length / 1KB }
只做纯计算时可优先 Select-Object;需要副作用(启动服务、调用命令)时用 ForEach-Object。

易错点

  • 脚本块里忘写 $_ 会导致输出为空,先用简单命令验证再上复杂逻辑
  • ForEach-Object 走管道流式处理,与先把集合载入内存的 foreach 语句行为不同

数据来源与参考

  • Microsoft Learn:ForEach-Object

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌