Wie kann ich eine bestimmte Instanz eines Prozesses mit nircmd schließen?

574
akshit bhatia

Ich habe den folgenden Befehl verwendet, um zu versuchen, die Notepad-Datei "temp.txt" zu schließen, die unter Windows geöffnet wurde.

nircmd win close title "temp.txt" 

Dieser Befehl scheint jedoch nicht zu funktionieren. Wenn ich den folgenden Code probiere:

nircmd win close process notepad.exe 

Dadurch werden alle geöffneten Notepad-Dateien geschlossen.

Meine Frage ist also, warum ich keine Notepad-Instanz schließen kann, die auf dem Namen von Notepad-Fenstern mit dem Titelschlüsselwort basiert. Gibt es eine Möglichkeit, dies zu tun?

1
Einige hilfreiche Informationen hier: https://superuser.com/questions/727724/close-programs-von-the-command-line-windows InterLinked vor 5 Jahren 0

1 Antwort auf die Frage

2
DavidPostill

Dieser Befehl scheint nicht zu funktionieren

nircmd win close title "temp.txt" 

Das obige funktioniert nicht, weil temp.txtnicht der vollständige Windows-Titel isttemp.txt - Notepad

Sie müssen entweder den vollständigen Fenstertitel verwenden oder stitleeinen partiellen Titel zuordnen:

title: Sucht das gewünschte Fenster, indem Sie den genauen Titel des Fensters im Parameter [zu findendes Fenster] angeben.

stitle: Findet das gewünschte Fenster, indem die ersten paar Zeichen des Fensters im Parameter [zu findendes Fenster] angegeben werden.

(Hervorhebung meines)

Quelle NirCmd Befehlsreferenz - win

Fenster in der Beschreibung für stitleverweist auf den Fenstertitel.

Die folgenden Befehle funktionieren beide:

rem use the full window title nircmd win close title "temp.txt - Notepad"  rem use the first few characters of the window title nircmd win close stitle "temp.txt"