Ich weiß, dass der tasklist
Befehl in Windows eine Liste mit Tasknamen und deren PID ausgibt. Es gibt einen anderen Befehl WMIC path win32_process get Commandline
, der detailliertere Informationen liefert, dessen Ausgabe jedoch viel chaotischer und manchmal unvorhersehbar ist (daher ist es sehr schwierig, ein Muster/einen regulären Ausdruck dagegen zu schreiben, insbesondere unter findstr
MSDOS!)
Ich frage mich also, ob es in Windows eine Möglichkeit gibt, den Task-Manager direkt abzufragen, um einen Bildnamen und den Befehlszeilenteil davon zu finden. Ich denke, wenn der Task-Manager selbst diese Informationen finden kann, muss es einen Weg geben.
Mir wäre es sehr viel lieber, wenn dies in einem Batch-Skript erledigt würde, wenn aber etwas Anspruchsvolleres (wie etwa .NET oder VB) erforderlich ist, wäre ein Beispiel großartig!
Antwort1
Power Shell:
Get-WmiObject Win32_Process | Select Name, ProcessId, CommandLine
Antwort2
Sehen Sie sich PowerShell und den Get-Process
Befehl an. Sie erhalten alle Informationen, die Sie auch im Task-Manager finden – und noch viel mehr.
https://technet.microsoft.com/en-us/library/hh849832.aspx
https://technet.microsoft.com/en-us/library/ee176855.aspx