gpt4 book ai didi

macos - 在 Macos 上的 bash 中获取午夜前的格式化时间

转载 作者:行者123 更新时间:2023-11-29 09:30:39 27 4
gpt4 key购买 nike

我想在 Mac OS 上的 bash 中获取午夜前的时间(它没有与许多 Linux 发行版相同的日期实用程序)。

例如,在 23:56:03 我想得到:“00:03:59”。

最佳答案

如果你使用 Unix 时间戳,数学会更容易一些,它是从过去某个固定时间(1970 年 1 月 1 日)开始经过的秒数。我使用内置的 local 使它们成为函数的局部变量,并设置变量的整数属性,因为它使进行算术运算的语法更简单。

print_time_until_midnight () {
local -i now=$(date +%s)

if (( now % 86400 == 0 )); then
# If it is exactly midnight, say so
echo "Time remaining: 00:00:00"
return
fi

# Get the time for 00:00:00 *tomorrow* (the next midnight)
local -i midnight=$(date -v+1d -v0H -v0M -v0S +%s)

local -i S=midnight-now
local -i H=S/3600
S=S-H*3600

local -i M=S/60
S=S-M*60

echo "Time remaining: $H:$M:$S"
}

关于macos - 在 Macos 上的 bash 中获取午夜前的格式化时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12895017/

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