Preciso de um script que modifique a hora do sistema em x
minutos. Algo como:
#hora = 12:56 #x = 2 se time_bool: tempo = tempo + x #hora = 12:58 outro: tempo = tempo - x #hora = 12:54
Faz parte de alguns testes do Red Hat, mas pode precisar ser movido para outro sistema operacional (provavelmente Fedora ou CentOS).
Responder1
Você poderia simplesmente fazer
if $time_bool; then
date --set="+${x} minutes"
else
date --set="-${x} minutes"
fi
A sintaxe da string de data GNU date
é bastante flexível e permite muitas coisas.
Testado no Ubuntu.
Responder2
Uma maneira simples pode ser:
date --set=@$(( $(date +%s) + 120 ))
(Não testado)
Mas não posso garantir que isso funcionará entre sistemas operacionais, pois date +%s
é uma extensão.
O script tenta obter a data atual UTC, convertê-la em segundos a partir da época, adicionar 120 segundos e, em seguida, definir a data a partir dos segundos da época Unix.