Bunuh proses dengan nama dan pemilik?


12

Sebelum saya melihat ke dalam menciptakan kembali roda dan roll saya sendiri, adakah yang mengetahui aplikasi / utilitas yang memungkinkan saya untuk mematikan proses, penyaringan dengan nama proses dan pemilik proses? Atau dapatkah ini dilakukan melalui PowerShell? (Powershell-fu saya sayangnya kurang).

Saya telah melihat keduanya pskilldan taskkill. Meskipun pskillmemungkinkan penghentian dengan nama proses, itu tidak memungkinkan saya untuk memfilter lebih lanjut oleh pemilik proses. Saya juga telah melihat WMI melalui wmic ( wmic process), tetapi antarmuka WMI tidak mengembalikan pemilik proses (setidaknya dari apa yang dapat saya katakan), jadi tidak dapat menggunakan ini juga.

Dasar Pemikiran
Saya melakukan banyak pengembangan pada Windows. Beberapa di antaranya melibatkan berurusan dengan Layanan Komponen (COM +). COM + memiliki proses host generik - dllhost.exe - yang digunakan untuk elemen kustom (yaitu, hal-hal yang saya kembangkan) dan proses sistem. Saya dapat membedakannya dengan pemilik yang mereka jalankan. Jadi, misalnya, saya ingin membunuh semua proses dllhost.exe yang dimiliki oleh saya, tetapi abaikan yang dimiliki oleh SYSTEM.

Ini akan menyelamatkan saya masuk ke Task Manager secara teratur dan mengidentifikasi dan secara manual membunuh masing-masing :-)

Jawaban:


5

Dalam PowerShell Anda akan melakukan:

gwmi -query "select * from win32_process where name='PROCESSNAME.exe'" | %{if($_.GetOwner().User -eq 'USERNAME'){$_.terminate()}}

Ah - sorakan luar biasa. Itu bekerja dengan baik :-)
Chris J

24

Kamu tidak terlihat cukup keras.

taskkill /f /fi "imagename eq foo.exe" /fi "username eq Chris"

Anda bahkan dapat memfilter berdasarkan modul yang dimuat, menggunakan /fi "modules eq libfoo.dll".


2
Jauh lebih mudah daripada metode PS :)
EBGreen

Anda benar - saya tidak terlihat cukup keras. Itu buruk bagiku.
Chris J
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.