使用命令行设置相对时间

arc*_*rty 5 linux date command-line

使用类似于 date 命令的东西,是否可以设置相对于“现在”的日期和时间?

所以而不是类似的date +%T -s "10:13:13"东西date -s +1h或类似的东西

Pet*_*r.O 5

要设置日期,您必须以 root 身份登录(或 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)"
Run Code Online (Sandbox Code Playgroud)

输出:

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
Run Code Online (Sandbox Code Playgroud)