Defina o tempo relativo usando a linha de comando

Defina o tempo relativo usando a linha de comando

Usando algo semelhante ao comando date, é possível definir a data e a hora relativas a 'agora'?

Então, em vez de algo date +%T -s "10:13:13"parecido date -s +1hou algo semelhante

Responder1

Para definir a data, você deve fazer login como root (ou su/sudo...)

echo "Time 1 hour ago ... $(date -d "$(date +%F\ %T) 1 hour ago")"
echo "Time now .......... $(date  +%F\ %T)"
echo "Time in 1 hour .... $(date -d "$(date +%F\ %T) 1 hour")"

sudo date +%F\ %T -s "$(date -d "$(date +%F\ %T) 1 hour")"
echo "Adjusted time ..... $(date  +%F\ %T)"

sudo date +%F\ %T -s "$(date -d "$(date +%F\ %T) 1 hour ago")"
echo "Re-adjusted time .. $(date  +%F\ %T)"

saída:

Time 1 hour ago ... 2012-04-16 21:31:53
Time now .......... 2012-04-16 22:31:53
Time in 1 hour .... 2012-04-16 23:31:53
[sudo] password for .... 
Adjusted time ..... 2012-04-16 23:31:53
[sudo] password for  .... 
Re-adjusted time .. 2012-04-16 22:31:53

Responder2

Recente dateagora pode definir a data relativamente com linguagem natural!

Aqui está um exemplo usando GNU coreutils 8.23

# date
Fri Oct  5 16:24:25 UTC 2018
# date --set "10 minutes ago"
Fri Oct  5 16:14:25 UTC 2018
# date --set "10 minutes"
Fri Oct  5 16:24:25 UTC 2018

Responder3

Você pode alterar seu fuso horário fazendo # dpkg-reconfigure tzdata. Não tenho certeza de como você alteraria a hora em um valor arbitrário.

informação relacionada