Como posso exibir um lembrete enquanto ou antes do desligamento? [duplicado]

-1

Os alto-falantes do meu computador emitem um som horrível durante o desligamento e eu esqueço de desligá-los antes do desligamento. Eu gostaria de evitar isso com um lembrete "just in time". Algo como uma janela pop-up que também atrasa o desligamento até que eu clique em um botão de confirmação seria ótimo.

    
por matiascelasco 17.08.2017 / 10:29

2 respostas

1

Para exibir uma mensagem antes de parar, basta seguir estas etapas:

  1. Escreva um script contendo os comandos que você deseja executar, e. g .:

    #!/bin/bash
    # for zenity it might be necessary to set the DISPLAY variable first with the following line:
    # DISPLAY=":0.0"
    zenity --warning
    
  2. salve o script onde quiser, eu uso ~/scripts/myscript como exemplo aqui
  3. torne-o executável com

    sudo chmod +x ~/scripts/myscript
    
  4. vinculá-lo ao diretório de desligamento usando

    sudo ln -s ~/scripts/myscript /etc/rc0.d/k01zenitywarning
    

O script será executado na próxima vez que você desligar. Para executá-lo também na reinicialização, conecte-o adicionalmente a /etc/rc6.d/ com sudo ln -s ~/scripts/myscript /etc/rc6.d/k01zenitywarning .

Isso faz o que você pediu, no entanto eu também gosto muito da abordagem do omid abc para resolver o problema - em vez de desligar manualmente os alto-falantes toda vez apenas silencie o som usando o comando a linha zenity no script para isso).

Editar - abordagem mais simples

Uma maneira ainda mais simples é fornecida pelo pacote upstart , depois de instalá-lo basta salvar o seguinte script em ~/.init/onshutdown.conf

start on starting rc RUNLEVEL=0
task
script
 # for zenity it might be necessary to set the DISPLAY variable first with the following line:
 # DISPLAY=":0.0"
 zenity --warning
end script

Novamente, zenity --warning pode ser substituído por qualquer comando (s). Este script não precisa ser executado, apenas salve e pronto. Para mais informações sobre upstart , consulte man 5 init .

    
por dessert 17.08.2017 / 11:55
0

Uma solução para o seu problema é silenciar o volume antes de desligar. Escreva este script em /etc/rc0.d :

#!/bin/bash    
amixer set Master mute

certifique-se de tornar este script executável usando sudo chmod +x myscript

Observe que o script do diretório será executado em ordem alfabética. O nome do script deve começar com k99 para ser executado no momento certo

Ao usar esta solução quando você dá um grito no sistema, ela automaticamente silencia o volume

    
por omid abbasi 17.08.2017 / 11:18