PowerShell 로 프로 세 스 의 소속 사용자 보기

모든 Windows PowerShell 버 전에 적용
특정 프로 세 스 의 소유자 사용자 가 누구 인지,프로 세 스 를 바 꾸 는 실례 가 몇 개 있 는 지 확인 하려 면 다음 코드 를 시도 해 보십시오.

$ProcessName = 'explorer.exe'
(Get-WmiObject -Query "select * from Win32_Process where name='$ProcessName'").GetOwner().User
메모:현재 로그 인 한 사용 자 를 얻 을 수 있 는 다양한 경로 가 있 지만 운영 체제 버 전이 다 르 기 때문에 방법 이 다 릅 니 다.그래 픽 사용자 인터페이스 를 사용 하 는 것 은 괜 찮 지만 비 사용자 인터페이스 코어 서버 라면 스 크 립 트 에서 현재 호스트 를 연결 하 는 사용 자 를 감지 할 수 없습니다.
위의 예 는 모든"explorer.exe"프로 세 스 의 소유 자 를 되 돌려 줍 니 다.관리자 권한 이 있 고 원 격 으로 로그 인 하면 사용자 목록 에 비활성 사용자 가 포 함 될 수 있 습 니 다.데스크 톱 마다 열 려 있 는 explorer.exe 는 세 션 이 다 르 고 사용자 가 다 를 수 있 기 때 문 입 니 다.
Sort-Object 명령 을 사용 하면 중복 항목 을 쉽게 제거 할 수 있 습 니 다.

$ProcessName = 'explorer.exe'
 (Get-WmiObject CQuery "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 " ."
 }
 

좋은 웹페이지 즐겨찾기