【发布时间】:2019-02-03 04:36:14
【问题描述】:
我需要完善这个脚本。我需要它在多个(5 个 - 所有的日志文件都在同一位置)Windows 系统上运行。我很难弄清楚如何确保我可以同时“跟踪”所有 5 台服务器上的条目的日志并返回“OK”;仅当在所有 5 台服务器上生成日志条目时才终止作业,而不仅仅是说其中 4 台。
这是它的意思:
- 启动服务,
- “跟踪”日志文件
- 确认日志文件包含条目 (
$waitfor) - 在 Terminate 中生成日志条目后
$serviceB = "my application service"
$logfile2 = "F:\App\log\wrapper.log"
$waitFor = "[4.2.3.GA (build: SVNTag=JBoss_4_2]”
Write-Host "Starting $serviceB"
Start-Service $serviceB
Write-Host "Waiting for $waitFor in $logfile2"
while (!((Get-Content $logfile2 -Tail 30) | ? {$_ -match $waitFor})) {
Start-Sleep -Seconds 5
}
我如何使用foreach 循环来完成假设 - 跟踪并等待 CSV 文件中所有 5 个远程系统上的日志条目?
【问题讨论】:
标签: windows powershell loops tail