PowerShell查看进程的所属用户_PowerShell

适用于所有Windows PowerShell 版本

查看一个特定进程的所有者用户是谁,有多少个改进程的实例,可以尝试下面的代码:

复制代码 代码如下:

$ProcessName = 'explorer.exe'
(Get-WmiObject -Query "select * from Win32_Process where name='$ProcessName'").GetOwner().User

注意:有许多不同的途径可以获取当前登陆的用户,但是由于你的操作系统版本的不同,所以方法不尽相同。如果使用图形化用户界面还好,但是如果是非用户界面Core服务器,脚本可能不能检测到当前连接主机的用户。

上面的例子返回了所有的“explorer.exe”进程的所有者。如果你拥有管理员权限并且远程登陆了,用户列表中还会可能会包括非活动用户。因为每个桌面上打开的 explorer.exe可能属于不同的会话,不同的用户。

如果使用了 Sort-Object 命令,可以非常容易排除重复项。

复制代码 代码如下:

$ProcessName = 'explorer.exe'
 (Get-WmiObject –Query "select * from Win32_Process where name='$ProcessName'").GetOwner().User |
 Sort-Object -Unique
 

并且,如果你更改了要查看的进程的名称,还会发现其它有趣的事情。下面的脚本会列出,当前通过PowerShell远程管理连接到你机器的用户:

复制代码 代码如下:

$ProcessName = 'wsmprovhost.exe'
 try
 {
 (Get-WmiObject -Query "select * from Win32_Process where name='$ProcessName'").GetOwner().User |
 Sort-Object -Unique
 }
 catch
 {
 Write-Warning "没有发现用户."
 }
 

时间: 2024-11-09 03:13:07

PowerShell查看进程的所属用户_PowerShell的相关文章

PowerShell查看本机文件关联程序和默认打开程序的方法_PowerShell

上次转载的一篇文章<PowerShell查看打开文件的默认应用程序>,它的亮点是调用了windows api,思路很独特,但是未必实用.后来@J在原文中评论,说assoc + ftype更方便.那么assoc 和 ftype是个神马东西,我简单描述下. assoc 和 ftype是windows系统上cmd.exe中两个命令: 前者assoc 可以返回文件扩展名(比如.mp3)和系统对该扩展名本身的命名(比如WMP11.AssocFile.MP3). 后者 ftype 可以返回系统的扩展名命名

Powershell小技巧之查询AD用户_PowerShell

假若你登录到了一个AD中你可以轻松的查询AD目录.在先前的技巧中我们阐述了一个基本脚本.这里有一个可以自定义根目录的扩展方法(设置你的查询点),它支持同步查询(而不是递归到一个容器). 它同时也阐述了怎么从一个活动目录查找结果再将其转化成用户对象: $SAMAccountName = 'tobias' $SearchRoot = 'LDAP://OU=customer,DC=company,DC=com' $SearchScope = 'OneLevel' $ldap = "(&(obj

Linux查看进程命令和具体操作

ps ax 命令显示一个当前系统进程的列表,该列表中包括其他用户拥有的进程.要显示进程以及它们的所有者,使用 ps aux 命令.该列表是一个静态列表:换一句话说,它是在你启用这项命令时正在运行的进程的快照.如果你需要Linux查看进程一个时刻更新的运行进程列表,使用下面描述的 top 命令. Linux查看进程ps 的输出会很长.要防止它快速从屏幕中滑过,你可以把它管道输出给 less 命令: ps aux | less 你可以使用 Linux查看进程ps 命令和 grep 命令的组合来查看某

在Linux系统中查看进程及杀死僵尸进程的方法

  ps 命令 ps 命令就是最根本相应情况下也是相当强大地进程查看命令.运用该命令可以确定有哪些进程正在运行和运行地状态. 进程 是否结束.进程有没有僵死.哪些进程占用了过多地资源等等.总之大部分信息均为可以通过执行该命令得到地. ps 命令及其参数 ps 命令最经常使用地还是用于监控后台进程地工作情况,因为后台进程是不和屏幕键盘这些标准输入/输出设 备进行通信地,所以如果需要检测其情况,便可以运用 ps 命令了. 该命令语法格式如下: ps [选项] -e 显示所有进程,环境变量 -f 全格

linux-LINUX查看进程,这两条进程分别是啥意思

问题描述 LINUX查看进程,这两条进程分别是啥意思 解决方案 参考. http://zhidao.baidu.com/link?url=-ahSB0ttw9atRfm1DhJTyJ0ygh56jIH9NXsLoQ9mNBCxPzkiu6ZkgnUitbXoNCBqwD2FyCK7dJrw-BXa2cdJpU7vrjvZWPqEYdL40RWIXFO 解决方案二: [root@xxx ~]# ps -ef UID PID PPID C STIME TTY TIME CMD root 1 0 0

linux ps命令,查看某进程cpu和内存占用率情况, linux ps命令,查看进程cpu和内存占用率排序。 不指定

背景:有时需要单看某个进程的CPU及占用情况,有时需要看整体进程的一个占用情况.一. linux ps命令,查看某进程cpu和内存占用率情况[root@test vhost]# ps auxUSER       PID  %CPU    %MEM    VSZ   RSS TTY      STAT    START   TIME COMMAND解释:linux 下的ps命令USER 进程运行用户PID    进程编号%CPU 进程的cpu占用率%MEM 进程的内存占用率VSZ 进程所使用的虚存

PowerShell实现时间管理小秘书_PowerShell

引言 是不是觉得同样是活着,别人为啥就能做这么多事呢? 是不是经常8小时班上下来,却不晓得自己干了些啥? 是不是习惯于在Email, BBS, Google Reader间切换,感觉也挺忙的呢? 你需要时间管理! 你知道自己一天写了多少代码吗? 你了解自己一周有多少时间在网上游荡吗? 你能说出一个月有几天陪着家人吗? 你需要PowerShell! 管理?先记录! 时间管理就是用最少的时间做最多的事.和优化程序的性能一样,为了提升时间的利用率,得先知道自己的时间都花在什么地方.如果上班时间有50%

CentOS如何查看进程运行的完整路径?

  CentOS如何查看进程运行的完整路径?          Linux在启动一个进程时,系统会在/proc下创建一个以PID命名的文件夹,在该文件夹下会有我们的进程的信息,其中包括一个名为exe的文件即记录了绝对路径,通过ll或ls –l命令即可查看. ll /proc/PID cwd符号链接的是进程运行目录; exe符号连接就是执行程序的绝对路径; cmdline就是程序运行时输入的命令行命令; environ记录了进程运行时的环境变量; fd目录下是进程打开或使用的文件的符号连接.

XP怎么查看进程的PID

  XP怎么查看进程的PID           方法1 首先同时按Ctrl+Alt+Del组合键打开Windows 任务管理器或在任务栏空白处鼠标右键单击"任务管理器" 弹出的Windows xp系统任务管理器界面切换到"进程"选项卡