В других ответах сторона регулярного выражения достаточно хорошо освещена.Всякий раз, когда я вижу такие маленькие журналы, как я, я всегда думаю о ConvertFrom-StringData
, который
преобразует строку, содержащую одну или несколько пар ключ и значение, в хэш-таблицу.
From: help ConvertFrom-StringData
В своей базовой форме мы просто делаем что-то вроде этого:
$pairs = Get-Content -Raw -File $pathtofile | ConvertFrom-StringData
[pscustomobject]$pairs
Что даст вам объект PowerShell, с которым вы можете взаимодействоватьлегко!
DS : LOG_4|
Schema : LOLYY|
IDs : xxxxx,xxxx
Log : false|
DBMS : mssql|
Host : abc.XYz.com|
Phase : |
DaemonReruns : 2|
Сомнительно, что вам нужны висячие трубы.Вы можете удалить их с помощью некоторых регулярных выражений или более простых строковых методов.
[pscustomobject](Get-Content -File $pathToFile | ForEach-Object{$_.trimend("|")} | Out-string | ConvertFrom-StringData)
[pscustomobject]((Get-Content -Raw -File $pathToFile) -replace "(?m)\|$" | ConvertFrom-StringData)
В любом случае это дает вам больше возможностей для обработки ваших данных.