如何显示Get-EventLog cmdlet中的某些行

时间:2017-10-09 11:05:44

标签: powershell powershell-v2.0 powershell-v3.0

如何显示消息中的某些行?

Get-EventLog -LogName Application -EntryType Error -Newest 10 -Message "*3CXPhone.exe*" |
     Format-Table -wrap

特别是在我的例子中,我想只显示1,2和7,8行。怎么做?

See我的例子

2 个答案:

答案 0 :(得分:0)

这样的事情应该这样做:

$lines = Get-EventLog -LogName Application -EntryType Error -Newest 10 -Message "*.exe*"    
for($i=1;$i -lt 10;$i++){
    switch ($i) 
    { 
        1 {$lines[$i]} 
        2 {$lines[$i]} 
        7 {$lines[$i]} 
        8 {$lines[$i]}         
    }
}

所以基本上你创建一个数组$ lines。并使用计数器$ i,将计数器与数组的索引相匹配。

答案 1 :(得分:0)

    Get-EventLog -LogName Application -EntryType Error -Newest 10 -Message "*.exe*"    | where {$_.Message -like '*.exe*'} |  Format-Table -wrap