相关疑难解决方法(0)

在PowerShell中解析“查询用户”的更简单方法

我目前在PowerShell中有以下查询:

query user /server:$server
Run Code Online (Sandbox Code Playgroud)

返回输出:

USERNAME              SESSIONNAME        ID  STATE   IDLE TIME  LOGON TIME  
svc_chthost                               2  Disc         1:05  8/16/2016 12:01 PM  
myusername                rdp-tcp         3  Active          .  8/29/2016 11:29 AM
Run Code Online (Sandbox Code Playgroud)

目前,我正在使用@(query user /server:$server).Count - 1一个值来表示已登录的用户数量(我知道这并不漂亮)。但是,现在我想获取诸如USERNAME,等信息ID,并LOGON TIME在脚本的其他部分中使用。

我的问题是围绕一种更轻松的方法来解析上述信息,或者可能是对我的问题的更好解决方案:统计和收集与登录用户有关的信息。

我找到了其他似乎更有效的解决方案,但是我确信必须有一种更简单的方法来完成此任务:

$ComputerName | Foreach-object { 
$Computer = $_ 
try 
    {
        $processinfo = @(Get-WmiObject -class win32_process -ComputerName $Computer -EA "Stop") 
            if ($processinfo) 
            {     
                $processinfo | Foreach-Object {$_.GetOwner().User} |  
                Where-Object {$_ -ne "NETWORK SERVICE" -and $_ -ne "LOCAL SERVICE" …
Run Code Online (Sandbox Code Playgroud)

powershell scripting parsing powershell-3.0 server

7
推荐指数
2
解决办法
1万
查看次数

标签 统计

parsing ×1

powershell ×1

powershell-3.0 ×1

scripting ×1

server ×1