Todos sabemos que o Mac OS X tem a funcionalidade muito útil de itens de login , que permite, entre outras coisas, configurar aplicativos / scripts para serem executados quando você fizer login.
Estou procurando uma maneira de configurar uma lista de scripts / aplicativos executados quando eu sair . Uma lista "Itens de logout", se desejar.
Basicamente, quero escrever alguns scripts de limpeza para mim que serão executados automaticamente quando eu sair ou desligar.
Então, estou procurando uma maneira de ter um script (ou, idealmente, a lista deles) acionado automaticamente quando eu sair. O logout aguardaria a conclusão dos scripts (assim como o logout espera que você clique em Salvar se um aplicativo solicitar).
Existe uma maneira de acionar automaticamente um script quando eu sair do Mac OS X?
fonte
Respostas:
Os ganchos de logout foram descontinuados na 10.4 , mas ainda funcionam a partir da 10.9.
O valor da chave LogoutHook pode ser apenas um caminho para um executável e não um comando shell. O gancho de logout é executado como raiz.
O comando padrão modifica /var/root/Library/Preferences/com.apple.loginwindow.plist. Adicionar uma chave LogoutHook a /Library/Preferences/com.apple.loginwindow.plist não funciona.
Se um gancho de logout demorar o suficiente para ser executado, uma tela cinza será exibida até que o gancho de logoff termine. Não parece haver nenhum limite de tempo após o qual os ganchos de logout são forçados a terminar.
Eu não descobri nenhuma maneira de executar programas no logout de forma confiável com o launchd. Quando tentei capturar sinais como EXIT, o código no trap só era executado quando eu saí da janela de login e não quando eu desliguei ou reiniciei.
fonte
sh
(ele cria esse arquivo .txt). Salvei o script como /etc/rc.shutdown.local e o adicioneidefaults
como você disse. Nenhum dos arquivos já estava lá. Estou fazendo algo errado? Obrigado!Na verdade, existe uma maneira:
Para ocultá-lo do Dock:
fonte
O Script Timer é uma boa opção para isso. Pode ser executado no logout, logon e muito mais. Eu iria com isso para uma solução simples e fácil de usar. Possui uma GUI simples:
Há duas coisas que você precisa observar sobre o Script Timer. Um deles, que é não livre. Custa 12 dólares, mas pessoalmente acho que vale a pena. Segundo, não é totalmente compatível com o Lion, mas eles prometeram uma atualização gratuita assim que a tornaram compatível.
fonte
Você também pode criar um aplicativo para Mac a partir do seu script usando algo como Platypus e adicioná-lo aos itens de login como qualquer outro aplicativo.
fonte
O Power Manager pode executar um script quando um usuário efetua logout. Este é um produto comercial e suporta o mais recente macOS.
Versões anteriores necessárias usando o editor de eventos , mas agora uma tarefa do Assistente de Agendamento está incluída para executar scripts no logon e logout.
Escrevi o Power Manager, fique à vontade para fazer perguntas técnicas sobre sua implementação. No caso de eventos acionados por logoff, o Power Manager não pesquisa alterações no estado do usuário, mas é notificado sobre as alterações do usuário pelo macOS. Essa abordagem é mais eficiente do que ter um script em loop / sondagem.
fonte