filter Get-ProcessOwner { $id = $_.ID $obj = (Get-WmiObject -Class Win32_Process -Filter "Handle=$id") $info = $obj.GetOwner() if ($info.ReturnValue -eq 2) { $owner = '[Access Denied]' } else { $owner = '{0}\{1}' -f $info.Domain, $info.User $parent = $obj.parentprocessid $cmdline = $obj.commandline } $_ | Add-Member -NotePropertyMembers @{Owner=$owner;parent=$parent;commandline=$cmdline} -PassThru } Set-Location -path 'j:\mgmt scripts' $outfile = new-item -name "sassessions-$(get-date -format 'ddd-H.mm').csv" -type file -force get-process sas -ErrorAction:silentlycontinue |get-processowner |Where-Object {$_.owner -ne "NT AUTHORITY\SYSTEM"} |select-object -Property Owner, id, parent, @{l="starttime";e={"{0:ddMMMyyyy HH:mm:ss}" -f $_.starttime}}, totalprocessortime, userprocessortime, commandline |export-csv -NoTypeInformation -Path $outfile