CCM日志读取最后几条日志文本行

时间:2019-07-11 20:38:07

标签: powershell

我想知道是否有一种方法只能获取最后x行的内容的选定对象。在此示例中,最后5行。下面是我正在使用的命令。

Get-Content "C:\Windows\CCM\Logs\DataTransferService.log" | Select-Object -Last 5

当最后一行(在“日志文本”下突出显示)在一个线程中有多行时,在任何ccm日志文件上运行此命令时,它将这些线程行计为5行。因此,我的结果未显示DTSjob文本的最后几行。另外,只要最后一行没有多行线程,该命令即可正常工作。因此,如果有一种方法可以只显示日志文本行的最后x个数字而不显示线程,那将很有帮助。

enter image description here

1 个答案:

答案 0 :(得分:0)

我相信这些多余的行用制表符分隔。您可以先过滤掉这些内容,然后再发送到Select-Object

Get-Content DataTransferService.log |
    Where-Object {$_ -notmatch "\t"} |
        Select-Object -Last 5