none
Выгрузить информацию об активных Терминальных сессиях RRS feed

  • Вопрос

  • Как добавить колонку, чтобы еще отображалось имя хоста, с которого подключен клиент к терминальной сессии ?

    $Computers = Get-Content -Path "C:\temp\Servers.txt" $Processes = Get-WMIObject -class win32_process -computer $Computers | where {$_.ProcessName -eq "explorer.exe"} foreach ($Process in $Processes) { Write-Host $Process.PSComputerName $Process.getowner().User $Process.SessionID $Process.Status }

    Меня бы вполне устроил query session /server:, но он не отображает устройства, почему то.

    В powershell не знаю как это сделать.


    • Изменено AlekseyKl 10 августа 2016 г. 9:27
    10 августа 2016 г. 9:07

Ответы

Все ответы

  • Скачайте и установите модуль - https://psterminalservices.codeplex.com/

    Командлет - Get-TSSession

    • Помечено в качестве ответа KazunEditor 17 августа 2016 г. 6:47
    10 августа 2016 г. 9:35
    Отвечающий
  • Спасибо!
    19 августа 2016 г. 4:01
  • Кому интересно.

    Скрипт смотрит EventLog и выгружает оттуда в текстовый файл активную сессию пользователя с указанием времени входа, имени пользователя, IP адреса и имени рабочей станции.


    $Events = Get-EventLog -Computername nsksrvts9 -logname Security -after (get-date -hour 0 -minute 0 -second 0) -InstanceId 4648
    
    $Data = New-Object System.Management.Automation.PSObject
    $Data | Add-Member NoteProperty Time ($null)
    $Data | Add-Member NoteProperty UserName ($null)
    $Data | Add-Member NoteProperty Address ($null)
    $Data | Add-Member NoteProperty Name ($null)
    
    foreach ($f in $Events) 
    {
    $Data.time = $f.TimeGenerated
    
    $a=$f.message.split("`n")
    
    $start = $a[10].IndexOf(":")
    $data.UserName=$a[10].substring($start+1,$a[10].Length-$start-1).Trim()
    
    $start = $a[23].IndexOf(":")
    $data.Address=$a[23].substring($start+1,$a[23].Length-$start-1).Trim()
    
    $nbtstat = nbtstat.exe -A $data.Address
    $b=0
    foreach ($s in $nbtstat)
    {
    
    $start=$s.IndexOf("NSK")
    if ( $start -gt 0 )
        {
        $b=$s.substring($start,9)
        $b
        }
    }
    $data.Name=$b
    
    if ( ($data.UserName -ne "-") -and ($data.Address -ne "-") ) { $data | out-file c:\\temp\test.txt -Append -noclobber }
    }

    3 октября 2016 г. 3:23
  • Отсутствует закрывающий знак "}" в блоке операторов или определении типа.
        + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
        + FullyQualifiedErrorId : MissingEndCurlyBrace
    3 октября 2016 г. 5:11