在Linux中将x秒添加到当前日期

21
我这里有两台Linux系统(CentOS 6.0),我需要在当前日期时间上加上(或减去)5秒钟。最终,两台机器的时间会相差5秒钟(一台时间正确,另一台时间比实际时间多或少5秒钟)。
我知道可以用以下命令更改日期:
date -s "DD MMM YYYY HH:MM:SS"

但我需要很精确,而且在正确的时间运行命令对我来说会很困难。

所以我想知道是否有一种通用方法可以将当前时间增加5秒,类似于当你选择与格林威治相比的时区 (+5 小时在我的情况下)。

2个回答

36

10
请注意,您可以使用命令 date -s "5 seconds ago" 将时钟往回调。 - Claudiu
2
我想我刚刚不小心设置了我的系统时钟。 - marinara
一些问题:这也适用于毫秒吗?你可以使用负号代替“ago”吗?这个命令的文档在哪里可以找到? - tom

19
实际上,Linux自带一个方便的函数来返回一个时间加上一个修改器。
date --date='5 seconds'

你可以通过简单的命令行进行测试。
date && date --date='5 seconds'

使用这个方法,你可以编写一个小的批处理文件,在其中设置一个变量为所需时间,然后运行set命令。

编辑:下面是一个Bash脚本,可以为你完成这个任务。需要以root身份执行。

#!/bin/bash

NEWDATE=`date +%T --date '5 seconds'`;
date +%T -s "$NEWDATE";

其实有一个脚本适合你。记得你必须以root身份运行它。 - Nathan Cox

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接