将特殊 hh mm 更改为另一个时区

将特殊 hh mm 更改为另一个时区

我想将 0710(GMT 07 小时 10 分钟 +0)更改为 0810(GMT 08 小时 10 分钟 +1)

linux下什么命令可以做到这一点?

感谢您的支持 !

答案1

如果您只想将一个小时添加到四位数的时间值中,您可以将其视为标准的以 10 为基数的数字,然后简单地添加 100 模 2400。

实际上,它比这更复杂一些,因为我们首先必须删除所有前导零,以便 shell 不会将该值视为八进制,然后我们需要将结果重建回四位数字:

a=0710
b=$( printf "%04d" $(( (${a##0}+100) % 2400 )) )
echo b=$b    # "0810"

另一方面,如果您想执行可能因时区(和日期)而异的实际日期/时间算术,您需要更精确地满足您的要求。

答案2

您可以timedatectl通过以下方式使用:

  1. 打开终端窗口。

  2. 使用该timedatectl list-timezones命令列出可用的时区。搜索与 GMT+1 对应的区域。例如:

    timedatectl list-timezones | grep GMT+1
    
  3. 一旦您确定了 GMT+1 时区(例如,Europe/Paris是 GMT+1),请使用timedatectl set-timezone后跟所确定时区的命令:

    sudo timedatectl set-timezone Europe/Paris
    

    替换Europe/Paris为您在步骤 2 中找到的时区。

  4. 执行命令后,使用以下命令检查时区是否已更新:

    timedatectl
    

    这将显示当前的系统时间和日期设置,包括您设置的新时区。

请记住,使用sudo可能会提示您输入密码以使用管理权限运行命令。

相关内容