В Windows многие сервисы пишут обычные текстовые логи. Чтобы смотреть эти файлы по мере появления новых строк, в PowerShell удобно использовать Get-Content - аналог Linux tail.

Базовый просмотр с обновлением Get-Content -Path "C:\LogFiles\log1.txt" -Wait Команда покажет текущие строки и будет ждать новых. Отменяется Ctrl+C.

Только конец файла Чтобы не тащить весь файл, добавьте -Tail: Get-Content -Path "C:\LogFiles\log1.txt" -Wait -Tail 20

Фильтрация в реальном времени Можно фильтровать поток по шаблону, например IP: $IP = "37.252.2.22" Get-Content "C:\Windows\System32\LogFiles\Firewall\pfirewall.log" -Tail 40 -Wait | Where-Object { $_ -match $IP }

Цветной вывод для удобства чтения Подсветка помогает быстро заметить ошибки: Get-Content C:\Windows\System32\Sysprep\Panther\setupact.log -Wait -Tail 30 | ForEach-Object { switch -Regex ($_ ) { "ERROR" { Write-Host $_ -ForegroundColor White -BackgroundColor Red } "Success" { Write-Host $_ -ForegroundColor Green } default { Write-Host $_ } } }

Советы и ограничения

  • Для очень больших логов используйте -Tail, чтобы читать только конец и не расходовать память.
  • Get-Content подходит для большинства задач мониторинга, но для аналитики больших объёмов лучше использовать специализированные инструменты (ELK, Splunk и т.п.).

Если хотите, быстро адаптирую примеры под вашу задачу (фильтр по времени, несколько файлов или вывод в файл).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *