gpt4 book ai didi

linux - 如何用 Bash 求和日期

转载 作者:太空狗 更新时间:2023-10-29 12:33:49 25 4
gpt4 key购买 nike

我需要以 15 分钟为间隔获取纪元编号,后跟日期和时间。结果应该是这样的:

1376708400|2013-08-17 00:00:00
1376709300|2013-08-17 00:15:00
1376710200|2013-08-17 00:30:00
1376711100|2013-08-17 00:45:00
1376712000|2013-08-17 01:00:00
1376712900|2013-08-17 01:15:00
1376713800|2013-08-17 01:30:00
1376714700|2013-08-17 01:45:00
1376715600|2013-08-17 02:00:00
1376716500|2013-08-17 02:15:00
1376717400|2013-08-17 02:30:00

...等等...我总共应该有 96 行。

我现在最大的疑问是如何将分钟数增加(或求和)15 分钟,我已经尝试过这个(原谅我的困惑,我还在学习):

i=96
_incrementatime='+15 minutos'
count=1

_Date=$(`date "2013-08-29 00:00:00"`)
_dataEmSeg = `date -d "2013-08-29 00:00:00" +%s`

while test $i -ne 0
do
_VarData=$(`date --date="$_incrementatime*count"`)

_exprt=$(expr `$_Date+$_VarData`)
echo "$_dataEmSeg e $_exprt "

i=$((i-1))
count=$((count+1))
done

如果有人能给我一些指导来解决这个问题,我将不胜感激。

最佳答案

你可以基于此:

#!/bin/bash

DATE='2013-08-29 00:00:00'
TIMESTAMP=$(date -d "$DATE" '+%s')
INCREMENT=$(( 60 * 15 ))
STEPS=5

echo "$TIMESTAMP|$DATE"

for (( I = 1; I <= STEPS; ++I )); do
(( TIMESTAMP += INCREMENT ))
DATE=$(date -d "@$TIMESTAMP" '+%F %T')
echo "$TIMESTAMP|$DATE"
done

输出:

1377705600|2013-08-29 00:00:00
1377706500|2013-08-29 00:15:00
1377707400|2013-08-29 00:30:00
1377708300|2013-08-29 00:45:00
1377709200|2013-08-29 01:00:00
1377710100|2013-08-29 01:15:00

关于linux - 如何用 Bash 求和日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18622486/

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