Wie kann ich unter macOS alle Terminalprozesse (Windows) schließen (töten)?

2470
illdo

Mit macOS sierra suche ich nach einem Befehl, mit dem ich alle geöffneten Terminalfenster (Prozesse) schließen / töten kann. Es sollte auch alle durch diese Terminals geöffneten Prozesse beenden ... Warum pkill Terminalfunktioniert das nicht?

0

2 Antworten auf die Frage

1
mnewt

Kurze Antwort:

pkill -a Terminal 

Etwas längere Antwort:

Der obige Befehl durchsucht alle Prozesse, die den Namen "Terminal" enthalten, und beendet sie. Dadurch werden der Shell-Prozess (zB bash) und alle Prozesse im selben Prozessbaum (Befehle werden unter der Kontrolle der Shell ausgeführt) abgebrochen. GUI-Anwendungen werden wahrscheinlich nicht beendet, da sie sich häufig verzerren . Da diese nicht mehr mit dem TerminalProzess verbunden sind, kann nicht herausgefunden werden, welche ursprünglich vom Terminal gestartet wurden.

Um den Prozess zu finden, ohne ihn zu töten, führen Sie Folgendes aus:

pgrep -a Terminal 
Warum funktioniert "pkill Terminal" nicht? illdo vor 6 Jahren 0
Entschuldigung, tut es. Die Antwort wurde bearbeitet, um meinen Fehler zu korrigieren mnewt vor 6 Jahren 0
Ich habe pkill -a Terminal ausprobiert - ja, es schließt alle Terminals. Aber wenn ich das Terminal wieder öffne, werden alle zuvor geschlossenen Fenster wieder geöffnet = ( illdo vor 6 Jahren 0
Aha. Das ist das Beste, was mir momentan einfällt: `tell application" Terminal "schließe jedes Fenster und beende end tell" Aber es fordert dich auf, das Schließen jedes Tabs zu bestätigen. Ich habe nicht herausgefunden, wie ich das per Skript umgehen kann. mnewt vor 6 Jahren 0
0
Lukas

Wie wäre es cmd+q? Es schließt die Anwendung und alle Fenster davon. Wenn Sie einen Tastaturbefehl senden können .

  • Sie werden gefragt, ob Sie alle Prozesse beenden möchten, bevor Sie alle Terminals schließen.
  • Beim nächsten Start werden nicht alle geschlossenen Terminals wieder geöffnet.
versuchte es, aber es tötet keine Prozesse, die in Terminals liefen. Ich habe nodejs-Prozesse in Terminals - Terminals, die mit cmd + q geschlossen sind, aber wenn ich terminal erneut ausführen lasse, zeigt der ``pgrep node`, dass dieser Prozess noch läuft illdo vor 6 Jahren 0
Entschuldigung, das zu hören :( Es funktionierte zwar für mich, wird die Antwort anderen Googlern überlassen Lukas vor 6 Jahren 0