Venho brincando com o AppleScript e o Automator para que isso funcione, mas simplesmente não consigo entender. Se alguém pudesse me mostrar um exemplo ou me dar algumas dicas sobre como definir um aplicativo para fechar em um horário específico e colocar o computador no modo de suspensão ou desligamento, isso seria muito apreciado.
applescript
sleep-wake
script
applications
Tomás Richardson
fonte
fonte
at
não é o que você deseja.cron
oulaunchd
. Se você deseja uma interface mais fácil para configurar isso, talvez o lingon 3 ajude.Respostas:
Suponho que você gostaria de iniciar esse procedimento, em vez de executá-lo em um horário agendado regularmente.
Minha abordagem seria iniciar isso na linha de comando, mas qualquer comando pode ser executado em um componente de script shell de um script Automator com algumas modificações. A abordagem a seguir combina alguns componentes para realizar o trabalho:
tell
comando para sair do aplicativo1. Dizer ao aplicativo para sair
Isso pode ser tão simples quanto:
2. Colocando o computador em suspensão
Dê uma olhada em
pmset
mais detalhes, mas emitir o seguinte comando colocará seu computador em suspensão:3. Planejando uma operação para ser executada em um horário específico
Dê uma olhada no comando at . Este comando permite especificar um horário para a execução de um comando. Você precisará habilitar essa funcionalidade, pois não é por padrão. Para ativar o
atrun
daemon, execute o seguinte comando [referência no SU] :Depois de ativar
atrun
, qualquer comando pode ser agendado para um horário específico, emitindoque funciona porque
at
recebe sua entradastdin
por padrão. Uma abordagem mais simples é executar comandos listados em um arquivo. Um arquivo pode ser executado usando o-f
sinalizador, seguido pelo nome do script a ser executado assim:Juntando tudo
O que segue assume que
atrun
está ativado. Como exemplo de brinquedo, digamos que eu quero sair do Mail e colocar o computador em repouso às 23:00. Eu criaria um arquivo contendo os comandos que desejo executar da seguinte maneira:Salve esse arquivo
quit-and-sleep
e, em seguida, execute na linha de comandoRessalvas
Não fiz nenhuma verificação para garantir que o Mail realmente fosse fechado. O script também pressupõe que nada mais atrapalhará o computador. Eu mantive isso simples aqui como ponto de partida para o que você deseja.
fonte
Aqui está uma versão estritamente AppleScript que realiza isso com um valor de tempo codificado. Você poderia, é claro, tornar essa parte interativa, se quiser. Além disso, esta versão assume que o tempo está relacionado aos dias de hoje.
fonte
Você pode agendar um evento uma vez com:
Ou para agendá-lo para repetir todos os dias, edite o crontab com
EDITOR=nano crontab -e
e adicione uma entrada como esta:fonte
Aqui está o código que aguardará alguns segundos antes de sair do aplicativo atual e entrar em suspensão.
fonte