
138701
01.06.2019
Hintergrundprogramme finden
Hallo zusammen,
Wie finde ich mit Batch alle im Hintergrund aktiven Prozesse?
Gibt alle aktiven Prozesse an.
Außerdem kann ich durch eine FOR-Schleife Name und PID nutzen.
Daher, wie kann ich mit Batch/Powershell alle Hintergrundprogramme in eine Datei packen?
z.B. test.txt
Wie finde ich mit Batch alle im Hintergrund aktiven Prozesse?
tasklist /FI "STATUS eq RUNNING"
Außerdem kann ich durch eine FOR-Schleife Name und PID nutzen.
for /F "tokens=1,2" %%i in ('tasklist /FI "STATUS eq RUNNING"') do set NAME=%%i&set PID=%%j
Daher, wie kann ich mit Batch/Powershell alle Hintergrundprogramme in eine Datei packen?
z.B. test.txt
**NAME-PID**
abc.exe-1234
def.exe-342
cmd.exe-2334
cmd.exe-2678
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 458018
Url: https://administrator.de/forum/hintergrundprogramme-finden-458018.html
Ausgedruckt am: 21.04.2025 um 20:04 Uhr
10 Kommentare
Neuester Kommentar
Hallo,
https://docs.microsoft.com/en-us/sysinternals/learn/troubleshooting-book
https://download.sysinternals.com/files/SysinternalsSuite.zip
Gruß,
Peter
Zitat von @138701:
Das bringt mich nicht weiter.
Warum nicht?Das bringt mich nicht weiter.
Ich suche nach HINTERGRUND-Programmen.
Wie willst du ein Hintergrund Programm definieren? Dürfen da auch Hintegrund Prozesse enthalten sein? Auch solche auf denen du keinerlei Berechztigung hast, noch nicht mal diese Anzuzeigen? Es laufen weitaus mehr Programme bzw. Prozesse als der Taskmanager dir anzeigt. Processexplorer bzw. Processmonitor von Sysinternals kann dier sicherlich weiterhelfen.https://docs.microsoft.com/en-us/sysinternals/learn/troubleshooting-book
https://download.sysinternals.com/files/SysinternalsSuite.zip
Dabei werden alle aktiven Prozesse ausgegeben.
Ich habe nur dein Beispiel genommen und dir gezeit wie man z.B. die Ausgabe in einer Textdatei bekommen kann.Gruß,
Peter
Keine Ahnung was ein Hintergrundprogramm sein soll. Hintergrundprozesse sind auch relativ schwammig definiert. Übersetzt würde man Prozesse, die ohne Zutun/Eingriff des Benutzers laufen, darunter verstehen. Also Prozesse gänzlich ohne Fenster, Services, ggf. geplante Tasks oder Ähnliches.
https://en.wikipedia.org/wiki/Background_process
Ein ...... könnte dieser Definition nahe kommen.
Steffen
https://en.wikipedia.org/wiki/Background_process
Ein ...
>"test.txt" (echo **NAME-PID**&for /f tokens^=1^,3^ delims^=^" %%i in ('tasklist /nh /fi "sessionname eq services" /fo csv') do echo %%i-%%j)
Steffen
Wenn du wissen willst ob ein Batch Script irgendwo am laufen ist, wäre das so zu schreiben, wohl die einfachste Variante gewesen. Du schreibst nur um den heißen Brei, verursachst XY-Probleme und stiehlst dir und anderen damit die Zeit.
Steffen
for /f "delims=" %%i in (
'WMIC process WHERE "Name='cmd.exe' AND CommandLine LIKE '%%\\cpanel.bat%%' AND NOT CommandLine LIKE '%%WMIC process%%'" get ProcessID /value'
) do for /f "tokens=2 delims==" %%j in ("%%i") do echo %%j
Moin,
Und mit Batch geht das nicht.
Gruss Penny.
Zitat von @138701:
Hallo zusammen,
Wie finde ich mit Batch alle im Hintergrund aktiven Prozesse?
Daher, wie kann ich mit Batch/Powershell alle Hintergrundprogramme in eine Datei packen?
Was denn nun? Suchst Du nach Hintergrundprozesse oder Hintergrundprogramme?Hallo zusammen,
Wie finde ich mit Batch alle im Hintergrund aktiven Prozesse?
Daher, wie kann ich mit Batch/Powershell alle Hintergrundprogramme in eine Datei packen?
Und mit Batch geht das nicht.
Gruss Penny.
Offensichtlich geht es um Scripts, die in cmd.exe Prozessen mit Konsolefenstern laufen, deren Anzeige beim Prozessstart hidden gestellt wurde. Eine Liste mit allen möglichen Prozessen zu erstellen, ist sicher nicht nötig, wenn es nur darum geht diese ausfindig zu machen. (Und so eine Liste zu erstellen ist in Batch nicht möglich. Hier ist die Enumeration der Fenster und ihrer Eigenschaften nötig. Von einem Fenster kann dann der zugehörige Prozess ermittelt werden. Mit einer Liste der laufenden Prozesse/Tasks einzusteigen, wäre die falsche Richtung.) Ich verstehe auch nicht für was der Name des Prozesses von Interesse sein sollte. Es ist von vorn herein klar dass es cmd.exe sein muss. Interessant wäre vielleicht den Pfad des Scripts aus der CommandLine Eigenschaft zu holen um zu sehen welches Script läuft. Bspw. prüfen ob bla.bat oder blub.bat in irgendeinem cmd.exe Prozess ausgeführt werden:
Steffen
>"test.txt" (
for /f "delims=" %%i in (
'2^>nul WMIC process WHERE "Name='cmd.exe' AND NOT CommandLine LIKE '%%WMIC process%%' AND (CommandLine LIKE '%%\\bla.bat%%' OR CommandLine LIKE '%%\\blub.bat%%')" GET CommandLine^,ProcessID /value'
) do for /f "tokens=1* delims==" %%j in ("%%i") do (
if /i "%%j"=="CommandLine" (
for /f tokens^=2^ delims^=^" %%l in ("%%k") do <nul set /p "=%%l"
) else echo -%%k
)
)
Um Alternativen zu finden, gibst du keine ausreichenden Informationen. Ich bin jetzt raus.