源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

PowerShell查看进程的所属用户

  • 时间:2022-12-13 13:09 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:PowerShell查看进程的所属用户
适用于所有Windows PowerShell 版本 查看一个特定进程的所有者用户是谁,有多少个改进程的实例,可以尝试下面的代码:
[u]复制代码[/u] 代码如下:
$ProcessName = 'explorer.exe' (Get-WmiObject -Query "select * from Win32_Process where name='$ProcessName'").GetOwner().User
注意:有许多不同的途径可以获取当前登陆的用户,但是由于你的操作系统版本的不同,所以方法不尽相同。如果使用图形化用户界面还好,但是如果是非用户界面Core服务器,脚本可能不能检测到当前连接主机的用户。 上面的例子返回了所有的“explorer.exe”进程的所有者。如果你拥有管理员权限并且远程登陆了,用户列表中还会可能会包括非活动用户。因为每个桌面上打开的 explorer.exe可能属于不同的会话,不同的用户。 如果使用了 Sort-Object 命令,可以非常容易排除重复项。
[u]复制代码[/u] 代码如下:
$ProcessName = 'explorer.exe'  (Get-WmiObject –Query "select * from Win32_Process where name='$ProcessName'").GetOwner().User |  Sort-Object -Unique  
并且,如果你更改了要查看的进程的名称,还会发现其它有趣的事情。下面的脚本会列出,当前通过PowerShell远程管理连接到你机器的用户:
[u]复制代码[/u] 代码如下:
$ProcessName = 'wsmprovhost.exe'  try  {  (Get-WmiObject -Query "select * from Win32_Process where name='$ProcessName'").GetOwner().User |  Sort-Object -Unique  }  catch  {  Write-Warning "没有发现用户."  }  
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部