Форматирование файла журнала в PowerShell или Batch - PullRequest
2 голосов
/ 11 октября 2019

У меня есть файл журнала, который выглядит следующим образом:

[hh:mm:ss] LINE 1 GOES HERE
   LINE 2 GOES HERE
   LINE 3 GOES HERE
   LINE 4 GOES HERE
[hh:mm:ss] LINE 5 IS HERE

Я ищу способ отформатировать этот файл примерно так:

[hh:mm:ss] LINE 1 GOES HERE LINE 2 GOES HERE LINE 3 GOES HERE LINE 4 GOES HERE
[hh:mm:ss] LINE 5 GOES HERE 

IsЕсть ли простой способ сделать это в PowerShell или CMD.exe? Любая помощь приветствуется!

Вот то, что я до сих пор придумал:

$path = "---path to file----"
Get-Content "$path" | Where { $_.trim() -ne ""} | Set-Content "$path"

Это только перемещает строки вверх, если есть пустая строка выше, но на самом деле не двигаетсяпустые строки за исходной строкой.

1 Ответ

3 голосов
/ 11 октября 2019

РЕДАКТИРОВАТЬ: Обновлено на основе вашего примера кода.

Я вставил ваш пример в log.log и сделал это в Powershell:

((Get-Content "$PSScriptRoot/log.log") -join "`n").Replace("`n"," ").Replace("[","`n[") | Set-Content "$PSScriptRoot/log.log"
...