2012-04-06 3 views
1

Ich frage mich, ob es eine Möglichkeit gibt, alle Fensterprozesse zu beenden, wie durch Auswahl von "Windowed Processes" im Aktivitätsmonitor unter Mac OS X (Lion 10.7.3) unter bash angezeigt.Wie alle Fensterprozesse in OS X beendet werden

+0

'kill ' oder 'killall'? – uday

+0

Was zählen Sie als "Fensterprozess"? Wenn es ein Menü, aber keine Fenster hat, zählen Sie es? Wenn es Fenster hat, aber kein Dock-Icon? –

+0

Was Activity Monitor als "Windows-Prozess" auflistet http://cl.ly/FeXR Im Wesentlichen werden die Prozesse aufgelistet, die Sie sehen, wenn Sie Cmd-Tab drücken – c10b10

Antwort

0

die erreicht werden kann ziemlich leicht mit Applescript, insbesondere die Process Suite von Systemereignisse, die etwa die gleiche Vorstellung von einer Fensteranwendung als Activity Monitor zu haben scheint:

tell application "System Events" 
    set windowedAppIDs to bundle identifier of every process whose background only is false 
    repeat with windowedAppID in windowedAppIDs 
     tell application id windowedAppID to quit 
    end repeat 
end tell 

Um dies aus der Shell zu verwenden, wickeln Sie es in osascript -e (eine -e Option pro Zeile von AppleScript, beachten Sie die Zitat und Flucht. Siehe man osascript).