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