Wie erfasse ich die PID eines Prozesses beim Start von der Kommandozeile?

9

Gibt es eine Möglichkeit, dies rein in einer .bat-Datei zu tun?

Der Zweck ist, iexplore.exe zu starten und dann nur diese Instanz zu beenden, wenn sie fertig ist.

    
Nick 27.11.2009, 09:59
quelle

7 Antworten

9

Folgendes benutze ich:

%Vor%

Das Verzeichnis ist auf das Verzeichnis festgelegt, in dem sich die cmd-Datei befindet. Ändern Sie dir , um das zu ändern. Ändern Sie cmd , um zu ändern, welcher Befehl ausgeführt wird.

Wenn du eine stop.cmd willst, die es tötet, würde es so aussehen

%Vor%     
kybernetikos 23.07.2012 16:12
quelle
3

Sie können vbscript verwenden, hier ist ein Beispiel zum Erstellen von Notizblock, dann beenden Sie es mit seiner PID

%Vor%

speichern Sie als myscript.vbs und in der Befehlszeile

%Vor%     
ghostdog74 27.11.2009 12:35
quelle
2

Ummm, TaskList & amp; TaskKill ?!

    
Kirtan 27.11.2009 10:03
quelle
2

Eine leichte Abweichung von der Antwort von @kybernetikos, da es ein Parsing-Problem hat. Beachten Sie die Zeile if %%j gr 0 (

%Vor%     
hawkeye 02.08.2015 06:17
quelle
1

Aus irgendeinem Grund hat Ihr Ansatz, die Prozess-ID zu bekommen, für mich nicht funktioniert, aber da ich ein Experte für Stapel bin, habe ich meinen eigenen Ansatz programmiert, den ich hier angehängt habe:

%Vor%     
TarmoPikaro 01.05.2013 06:07
quelle
1

Am häufigsten wissen Sie, welche Aufgabe Sie starten - in diesem Fall, welche Seite iexplorer anzeigen soll.

Wie wäre es also mit

? %Vor%

Es werden alle Instanzen von etwas, das Ihren Seitentitel anzeigt, gelöscht, aber bei einem bestimmten Titel sollte es meistens genau einen geben.

Tom

    
user301024 17.10.2017 13:39
quelle
0

Ich denke, Sie können das nicht mit einfachen Befehlszeilendienstprogrammen tun, da IE tatsächlich untergeordnete Prozesse für jede Registerkarte erzeugt, dh wenn IE noch nicht ausgeführt wird, erhalten Sie einen übergeordneten IE-Prozess und einen untergeordneten Prozess für die Registerkarte und Wenn IE bereits ausgeführt wird, erhalten Sie einfach einen einzelnen untergeordneten Prozess.

Es wird sogar ziemlich schwierig, wenn Sie Ihr eigenes Tool zum Töten von IE schreiben, denn wenn Sie einen Kind (Tab) -Prozess beenden, wird der IE diesen Tab automatisch wiederherstellen.

Siehe auch diese verwandte Frage: Wie man einen Prozess von neu erstelltes IE8-Fenster? (obwohl es dort keine gute Antwort gibt).

    
Dirk Vollmar 27.11.2009 10:17
quelle

Tags und Links