Automator ¿terminar una tarea antes de continuar?

2

Tengo un automatizador ejecutando varios comandos de Applecript que deseo que ocurran secuencialmente. Por ejemplo, tengo un comando empty trash , luego un comando shut down . Cuando ejecuto el script, la computadora se apaga antes de que la papelera vacíe más de unos pocos archivos.

¿Cómo me aseguro de que Automator complete una tarea antes de continuar?

También tengo un comando de terminal para realizar copias de seguridad utilizando time machine. También me gustaría que ese termine antes del cierre.

    
pregunta JShoe 10.01.2013 - 05:52

1 respuesta

1

Lamentablemente, empty trash es un mensaje enviado al Finder y, desde el punto de vista de Automator, la tarea finaliza cuando se envía el mensaje.

En esta conversación hay una posible solución. Tiene que modificar su tarea de Apple con una comprobación del tamaño de la papelera:

tell application "Finder"
    set first_size to ""
    set second_size to " "
    set trash_folder to (path to trash folder)

    empty trash

    repeat until first_size is equal to second_size
        set first_size to size of (info for trash_folder) as integer
        delay 2
        set second_size to size of (info for trash_folder) as integer
    end repeat
end tell

De esta manera, la tarea no terminará hasta que el tamaño de la papelera deje de disminuir.

Si usa tmutil por tiempo comando de terminal de copia de seguridad de la máquina, hay una opción -b para el comando startbackup que le dice a la secuencia de comandos que espere hasta que la copia de seguridad haya finalizado antes de salir.

    
respondido por el Riccardo Marotti 10.01.2013 - 09:09

Lea otras preguntas en las etiquetas