AppleScript: cierre todos los Windows abiertos

Intento escribir un script de Apple para cerrar todos los Windows abiertos. Lo siguiente es lo que intenté:

tell application "System Events" repeat with theProcess in (application processes where visible is true) tell application theProcess close end tell end repeat end tell 

Parece que esto no funciona. Yo obtengo:

  • applescript - extraer nombre de file de la ruta de posix
  • Script de Apple para alternar comentarios / comentarios en el Editor de scripts?
  • ¿Puede AppleScript ser multiprocess?
  • Acelerar AppleScript
  • Autómata automático simple con AppleScript
  • ¿Cómo evito que AppleScript agregue .0 al final de un número?
  • Error de secuencia de commands: los events del sistema tienen un error: no se puede get la aplicación (elemento 1 de cada process de request que sea visible = verdadero). número -1728

    No me importa si las aplicaciones se cierran o si solo se cierran las windows.

    Intenté depurar esto, pero no pude abrir este script en Xcode.


    Editar: Gracias al usuario3439894 me he decidido por la siguiente secuencia de commands que simplemente envía Command + Q a cada una de las aplicaciones visibles:

     tell application "System Events" set theVisibleApps to (name of application processes where visible is true) end tell repeat with thisApp in theVisibleApps try tell application thisApp to activate tell application "System Events" keystroke "q" using command down end tell on error errMsg display dialog errMsg end try end repeat 

    Esto funciona para mí por ahora. Como me sugirió el usuario3439894 , necesito leer y comprender la Guía de idiomas AppleScript

  • Alternar Mostrar date y hora a través de AppleScript
  • ¿Existe una reference definitiva o capacidad de introspección para Applescript?
  • ¿Hay alguna forma de controlar el volumen Mac de Apple Watch?
  • Simular CTRL + F12 pulsación de tecla de 2 segundos
  • Descubre el PID de una aplicación
  • En un AppleScript, ¿cómo puedo llamar / reutilizar una subrutina de otro AppleScript?
  • One Solution collect form web for “AppleScript: cierre todos los Windows abiertos”

    El primer problema es en qué (application processes where visible is true) retorna.

    Como ejemplo, en una installation limpia de macOS 10.13 con solo Finder y Script Editor abierto:

     tell application "System Events" to get application processes where visible is true 

    Devoluciones:

     {application process "Script Editor" of application "System Events", application process "Finder" of application "System Events"} 

    Lo que realmente desea es get una list de nombres de aplicaciones que son visibles, por ejemplo:

     tell application "System Events" to get name of every application process where visible is true 

    Devoluciones:

     {"Script Editor", "Finder"} 

    El siguiente ejemplo de código AppleScript intentará cerrar todos los documentos abiertos de cada aplicación y si se produce un error, cierre todas las windows.

    Ahora abrí algunos documentos en TextEdit y Preview y algunas windows en Finder y luego ejecuté el código AppleScript de ejemplo . Cerró todos los documentos abiertos en TextEdit y Preview y todas las windows en Finder , pero no en el Editor de scripts .

    Nota : Esto no se cerrará y Script Editor documentará y silenciosamente se equivocará con:

     error "The document can't be closed while the script is running." 

    Ejemplo de código AppleScript :

     tell application "System Events" set theVisibleApps to (name of application processes where visible is true) end tell repeat with thisApp in theVisibleApps try tell application thisApp try close every document without saving on error close every window end try end tell end try end repeat 

    También tenga en count que con este ejemplo, el código de AppleScript codificado no cerrará todos los documentos ni cerrará todas las windows de una aplicación que no admita esos commands y deberá fallar silenciosamente debido al command try .

    Este ejemplo de código AppleScript se presenta para ilustrar qué está mal con su código actual y un ejemplo de cómo ayudar a lograr su objective.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).