
Schließlich bin ich auf diesen Befehl gestoßen:
tasklist /V /NH | find "test"
Es listet alle laufenden Prozesse mit „ausführlichen“ Informationen auf (wir benötigen den „Fenstertitel“, daher muss /V verwendet werden), überspringt die Kopfzeile und leitet diese dann an „find“ weiter, um nur Prozesse abzugleichen, die irgendwo „test“ enthalten.
Während ich das hier tippe, wird mir klar, dass es irgendwo in der gesamten von der Taskliste ausgegebenen Zeile nach „Test“ sucht, was nicht beabsichtigt ist (es soll nur der Fenstertitelteil geprüft werden). Das ist aber von untergeordneter Bedeutung, da es in der Praxis nie eine Übereinstimmung geben wird, weil „Test“ in Wirklichkeit eine Zeichenfolge mit mehreren Leerzeichen ist, die sehr unwahrscheinlich nie im Rest der Zeile auftaucht.
Wie dem auch sei, der obige Befehl dauert buchstäblich nur Sekunden, und das liegt nicht an der Weiterleitung zu „find“, denn ich habe es ohne versucht. Es ist einfach sehr träge beim Abrufen dieser Informationen, von denen man meinen könnte, dass sie so leicht im RAM verfügbar wären, dass man fast eine Antwort erhalten würde.Vorden Befehl ausgeben, aber anscheinend führen sie eine komplizierte Logik aus, die große Teile des Festplattenspeichers zu lesen scheint. (Wie sonst sind die Sekunden zu erklären, die jedes Mal zum Laden benötigt werden?)
Nachdem ich das Handbuch zur „Taskliste“ gelesen habe, gibt es keine Möglichkeit anzugeben, dass mich nur der „Fenstertitel“ interessiert und das alles ist, was ich ausgeben möchte (was schneller sein könnte).
Mir ist aufgefallen, dass es viel schneller geht, wenn man nach einem bestimmten „Image“ (EXE) filtert, aber das möchte ich nicht, da hier nur der „Fenstertitel“ (auch bekannt als „Prozesstitel“) überprüft/berücksichtigt werden soll.
Irgendwelche guten Ideen?
Antwort1
Sie können mit nach Fenstertitel filtern /FI "WINDOWTITLE eq Window Name"
. Allerdings ist das nicht viel schneller.
Dasselbe Ergebnis, allerdings deutlich schneller, erreichen Sie mit PowerShell:
get-process | where-object {$_.mainWindowTitle -like "test*"}
Dies ist in etwa einer Sekunde abgeschlossen.