我正在尝试从由两件事定义的日志文件中提取错误行。日志文件行如下所示:
2018-05-22 06:25:35.309 +0200(生产,S8320,DKMdczmpOXVJtYCSosPS6SfK8kGTSN1E,WwObvwqUw-0AAEnc-XsAAAPR)catalina-exec-12:错误 com.tableausoftware.api.webclient.remoting.RemoteCallHandler - 调用目标引发的异常:用户 2027 无权查看视图 13086 的评论。(errorCode=1) com.tableausoftware.domain.exceptions.PermissionDeniedException:用户 2027 无权查看视图 13086 的评论。(errorCode=1)
错误分两行描述,所以我需要过滤错误和当前小时,然后将其复制到文件中。此代码确实复制了所有错误,但不仅仅是从当前时间开始。
$hodina = (Get-Date -UFormat "%H").ToString()
$hodina = " " + $hodina +":"
$err = ": ERROR"
$errors = Select-String -Path "D:\..\file.log" -Pattern $hodina, $err -Context 0, 1
echo ($errors).Line >> Errors_file.txt
所以我想知道,如何将多个变量放入-Pattern
中,或者是否有其他解决方案来解决这个问题。