Powershell — извлечь метку времени

Поскольку вам нужно получить powershell информацию о времени, относящуюся windows-powershell только к процедуре psp_dba_maint_4, вы windows-application можете сделать:

#Remove empty lines, join strings and split string at "connection 1" = you keep the related information together. Next parse the array of strings for the string which matches "psp_dba_maint_4" and after that extract dateTime

$null = (((Get-Content $latest | ?{$_}) -join $null) -split "connection 1" | ?{$_ -match "psp_dba_maint_4"}) -match '\d{2}:\d{2}:\d{2}'
$Search = $matches[0]
if($search){
    "The overnight completed at: $search" 
}
else{
    "Do something"
}

В качестве windows-application альтернативы вы можете проанализировать windows-application журнал и создать объекты, например:

$obj = @(
    Get-Content $latest | ?{$_} | %{
        #If string is connection 1 initialize hashtable/create object
        If ($_ -match 'connection 1'){
            If ($attrsHT){
                new-object -typename psobject -Property $attrsht
            }
            $attrsHt = @{}
        }
        Else {
            #replace Procedure with Procedure, replace ": " with | and split at |
            $split = (($_ -replace "Procedure","Procedure:") -replace ": ","|") -split "\|"
            #add key and value to hashtable
            $attrsht.add($split[0],$split[1])
        }
    }
)

дает powershell вам массив $obj, содержащий windows-powershell логин:

$obj[0] | fl *

Procedure      : 'psp_dba_locklogin'
Message String : -----> login SPRK_SVC_IRISS logged in at 23:55:45 running SRI.exe:AWAITING COMMAND on
                 rptSPARKLE from host da-pvrep02 is still active
Server message : 2022-10-15 23:56:07:020
Message number : 0, Severity 10, State 1, Line 126

windows

powershell

timestamp

2022-11-28T06:24:36+00:00
Вопросы с похожей тематикой, как у вопроса:

Powershell — извлечь метку времени