gpt4 book ai didi

linux - 将时间跨度(以秒为单位)转换为 shell 中的格式化时间

转载 作者:IT老高 更新时间:2023-10-28 12:40:22 30 4
gpt4 key购买 nike

我有一个 $i 变量,它在 shell 脚本中是秒,我正在尝试将其转换为 24 HOUR HH:MM:SS。这在shell中可能吗?

最佳答案

这是一种有趣的 hacky 方法,可以完全满足您的需求 =)

date -u -d @${i} +"%T"

说明:

  • date 实用程序允许您从字符串中指定时间,以 1970-01-01 00:00:00 UTC 以来的秒数为单位,并以您指定的任何格式输出。
  • -u 选项用于显示 UTC 时间,因此它不考虑时区偏移(因为 1970 年的开始时间是 UTC)
  • 以下部分是 GNU date 特定的 (Linux):
    • -d 部分告诉date 接受来自字符串的时间信息,而不是使用now
    • @${i} 部分是告诉 date $i 以秒为单位的方式
  • +"%T" 用于格式化输出。从 man date 页面:%T 时间;与 %H:%M:%S 相同。由于我们只关心 HH:MM:SS 部分,这很合适!

关于linux - 将时间跨度(以秒为单位)转换为 shell 中的格式化时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13422743/

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