如何只读取.log文件的最后两行?以下脚本读取返回错误状态的完整.log文件。对于我的特殊情况,返回每个.log文件的正确状态的字符串写在最后两行。
function Get-Status($file) {
if (Select-String -Quiet 'Finished with errors' $_.FullName) {
return "ERROR"
} elseif (Select-String -Quiet 'Finished with warnings' $_.FullName) {
return "WARNING"
} elseif (Select-String -Quiet 'Finished.' $_.FullName) {
return "SUCCESS"
} else {
return "FAILED"
}
}
Get-ChildItem C:\logfolder\*.log | % {
[PSCustomObject] @{
Name = $_.Name;
Date = $_.LastWriteTime;
Status = Get-Status($_.FullName)]
}
}
发布于 2021-01-08 18:38:09
Unix tail equivalent command in Windows Powershell
在Get-Status()函数的最后,包含以下内容:
$lines = Get-Content $file | Select-Object -Last 2
而是针对$lines进行搜索。
https://stackoverflow.com/questions/65627015
复制相似问题