Допустим, вы установили значение отдельной записи для переменной $message
. Значение будет одной строкой, содержащей несколько строк.
Вам нужно искать содержимое строки, и для этого есть разные способы. Вот два метода:
Труба до findstr
:
& "echo" $message | findstr /im /C:"Logon ID"
& "echo" $message | findstr /im /C:"Object Name"
Разделить на NewLine
, передать до foreach
и использовать регулярное выражение:
$message -split [Environment]::NewLine | foreach{if ($_ -match "Logon ID|Object Name") {$_}}
Обратите внимание, что это даст вам вывод, который выглядит примерно так:
Logon ID: 0x9CD04EC
Object Name: C:\Shares\
Вам все равно нужно будет поработать, чтобы отделить значения от этих строк. Что-то вроде:
$logonID = & "echo" $message | findstr /im /C:"Logon ID"
($logonID -split " ")[1]