Powershell小技巧之复合筛选
当你分析文本日志或筛选不通类型的信息时,你通常要使用Where-Object。这里有一个通用脚本来说明复合筛选:
#logicalANDfilterforALLkeywords
Get-Content-PathC:\windows\WindowsUpdate.log|
Where-Object{$_-like'*successfullyinstalled*'}|
Where-Object{$_-like'*framework*'}|
Out-GridView
#aboveexamplecanalsobewritteninoneline
#byusingthe-andoperator
#theresultingcodeisNOTfaster,though,justhardertoread
Get-Content-PathC:\windows\WindowsUpdate.log|
Where-Object{($_-like'*successfullyinstalled*')-and($_-like'*framework*')}|
Out-GridView
#logical-or(eitherconditionismet)canonlybeappliedinoneline
Get-Content-PathC:\windows\WindowsUpdate.log|
Where-Object{($_-like'*successfullyinstalled*')-or($_-like'*framework*')}|
Out-GridView