n0cturne
Goto Top

Taskkill für bestimmtes cmd Fenster

Hallo Zusammen,

ich rufe mit einer cmd (title=Testanwendung-Watchdog-%Variable%) die psexec folgendermaßen auf:
psexec.exe -a 1  -w  Anwnedungspfad\Anwendung.exe

Nun mögchte ich genau dieses CMD Fenster mit einem Anderen Skript schließen.
taskkill /fi "WINDOWTITLE eq *Testanwendung-Watchdog-*" /f /t  
Funktioniert leider nicht, da taskkill wohl nicht mit 2 Wildcards klar kommt.

Ich wäre sehr dankbar für einen alternativen Lösungsweg.

Content-ID: 315948

Url: https://administrator.de/forum/taskkill-fuer-bestimmtes-cmd-fenster-315948.html

Ausgedruckt am: 25.12.2024 um 21:12 Uhr

colinardo
colinardo 22.09.2016 aktualisiert um 15:52:42 Uhr
Goto Top
Servus
powershell -Executionpolicy ByPass -Command  "Get-Process | ?{$_.MainWindowTitle -like '*Testanwendung-Watchdog-*'} | Stop-Process -Force"  
Aber warum speicherst du dir nicht die Process ID?. Du kannst Prozesse auch anhand der genutzten Befehlskette identifizieren (cmdline).

So z.B. bekommst du die Befehlszeile mit der die jeweilige CMD ausgeführt wurde
wmic process where (Name = "cmd.exe") get Commandline  
Hier kann man nach belieben im where filter filtern ( CommandLine like "%blabla%") und dann mit call statt get die "Terminate" methode ausführen lassen.

Grüße Uwe
clubmaster
clubmaster 22.09.2016 um 18:08:45 Uhr
Goto Top
Probiere mal taskkkill /IM Anwendung.exe(*)
n0cturne
n0cturne 26.09.2016 um 10:44:10 Uhr
Goto Top
Moin moin,

@colinardo
powershell kann ich hier leider nicht benutzen.

@clubmaster
da ich eine bestimmte cmd.exe beenden möchte, jedoch nicht alle cmd Fenster, komme ich damit nicht weit.
colinardo
colinardo 26.09.2016 um 11:16:21 Uhr
Goto Top
Zitat von @n0cturne:
@colinardo
powershell kann ich hier leider nicht benutzen.
Die obere Zeile ist für eine Batch face-wink

Alternative für Batch steht oben.
colinardo
Lösung colinardo 27.09.2016 aktualisiert um 09:28:28 Uhr
Goto Top
Hier ein weiteres "Batch" Beispiel:
@echo off
set "searchstring=Testanwendung-Watchdog-%Variable%"  
for /f "tokens=2" %%a in ('tasklist /V /FI "IMAGENAME eq cmd.exe" ^| find /i "%searchstring%"') do taskkill /pid %%a  
Grüße Uwe

Wenns das dann war, den Beitrag bitte noch auf gelöst setzen. Merci.
n0cturne
n0cturne 29.09.2016 um 16:34:56 Uhr
Goto Top
Dankesehr! face-smile