gpt4 book ai didi

linux - 如何在 Solaris 中使用 shell 脚本将时间设置为当前时间后 2 天?

转载 作者:太空狗 更新时间:2023-10-29 11:36:18 25 4
gpt4 key购买 nike

我想将系统时间修改为两天后,但我发现我可以在 Solaris 中使用 date 命令将时间设置为特定时间:

#date mmddhhmmYY

但不能在当前时间加上两天。有没有一种简单的方法可以使用 shell 命令完成此任务?如果你知道 linux 中类似的东西,也请与我分享。

最佳答案

Solaris date支持逐渐调整时间的语法。这可能是您最好的选择。

date -a $(( 48 * 60 * 60 * 60 ))

应该最终将您的日期提前两天更新。这确实是设置系统时间的最佳方式,因为它会逐渐更新而不是突然向前跳(这可能会搞砸一堆正在运行的程序)。

除此之外,您可以编写一个很好的脚本来了解一个月中的天数和闰年,然后自己进行计算。如果你特别懒惰(像我一样)并且精度和竞争条件不会让你那么烦恼(像我一样,回答 StackOverflow 问题),你可以像这样做一个 hack:

#!/bin/sh

now=$(date +%H%M.%S) # current time
date 2359.59 # Set time to 11:59:59pm
sleep 1 # Wait a second so the day rolls over
date 2359.59 # Set time to 11:59:59pm
sleep 1 # Wait a second so the day rolls over
date "$now" # Set time back to what it was, but in the new day
date -a 2 # Gradually add two seconds back to the clock

tnarik/solaris10-minimal Vagrant box 上测试运行:

# ./adddaystodate
The current date is now Monday, 25 January 2016 00:46:59 GMT
Monday, 25 January 2016 23:59:59 GMT
Tuesday, 26 January 2016 23:59:59 GMT
Wednesday, 27 January 2016 00:46:59 GMT
The current date is now Wednesday, 27 January 2016 00:46:59 GMT

关于linux - 如何在 Solaris 中使用 shell 脚本将时间设置为当前时间后 2 天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34982886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com