Eu consegui descobrir como suspender / hibernar o sistema na linha de comando, lendo Como posso suspender / hibernar na linha de comando? .
No entanto, gostaria de saber como usar a linha de comando para suspender / hibernar em um determinado momento, em termos absolutos (por exemplo, 23:00) ou relativos (por exemplo, em 30 minutos).
Eu já sei como fazer isso com o desligamento, mas tenho certeza de que o comando é semelhante.
fonte
atrm
comando remove os trabalhos criados porat
.Para especificação relativa (por exemplo, "após 30 minutos"), você pode simplesmente usar o
sleep
comando para aguardar o comando de suspensão / hibernação.Exemplos:
Aguarde 30 minutos e depois suspenda:
Aguarde 1 hora e depois hiberne:
fonte
pm-hibernate
quero uma senha para root novamente e a suspensão não acontece.Por períodos específicos repetidos - como desligar computadores são um horário específico todos os dias. use cron.
adicione o seguinte:
Se você deseja personalizá-lo.
Por um trabalho único, use o comando at
Por exemplo, se você deseja hibernar em 30 minutos:
Ou se você deseja suspender às 23:00:
fonte
cron
é uma boa solução quando o objetivo é suspender ou hibernar em um horário específico do dia ou em um horário específico em um dia específico da semana, mês ou ano. Mas para agendar uma única suspensão ou hibernação, que parece ser o que Ederico estava perguntando (e que é algo que faz muito mais sentido querer fazer), oat
comando deve ser usado. (Você pode programar um único evento comcron
, fazendo a edição do evento do crontab relevante, por exemplo, usandosed
ouawk
, mas que é extremamente complexo e desnecessário; usoat
.)at
, mas infelizmente as informações que você adicionou não estão corretas. O<
operador redireciona o texto do arquivo ou dispositivo especificado à sua direita para a entrada padrão do comando especificado à sua esquerda. Se você quisesse usar em<
vez de|
(como na minha resposta ), teria que criar um arquivo compmi action suspend
(oupmi action hibernate
) como seu conteúdo. Essa complexidade|
melhora aqui.cat
comando à esquerda de um|
(por exemplocat foo | bar
), pode substituí-lo por uma<
expressão (bar < foo
). Mas quando você tem umecho
comando à esquerda de a|
, isso não pode ser substituído trivialmente por uma<
expressão.