温馨提示×

ubuntu时间戳如何对比

小樊
55
2026-09-07 07:32:28
栏目: 智能运维

在 Ubuntu(Linux)里,“时间戳”一般指 Unix 时间戳(从 1970-01-01 00:00:00 UTC 起的秒数,或毫秒数)。对比时间戳常见有几种场景,下面按实用方式说明。


一、命令行中对比时间戳

1. 获取当前时间戳

# 秒级时间戳
date +%s

# 毫秒级时间戳
date +%s%3N

2. 把时间戳转成可读时间

# 秒级
date -d @1710000000

# 毫秒级
date -d @$(echo 1710000000000 / 1000 | bc)

3. 比较两个时间戳(数值比较)

时间戳本质是整数,可直接比大小:

t1=1710000000
t2=1710003600

if [ "$t1" -lt "$t2" ]; then
  echo "t1 早于 t2"
fi

二、计算两个时间戳的差值

diff=$(( t2 - t1 ))
echo "相差 ${diff} 秒"

如果是毫秒:

diff=$(( (t2 - t1) / 1000 ))

三、对比文件的时间戳

1. 查看文件时间戳

stat file.txt

2. 比较两个文件哪个更新

if [ file1.txt -nt file2.txt ]; then
  echo "file1 更新"
fi
  • -nt:newer than
  • -ot:older than

四、在脚本中常见用法示例

now=$(date +%s)
last=$(stat -c %Y file.txt)   # 文件修改时间(秒)

if [ $((now - last)) -gt 3600 ]; then
  echo "文件超过 1 小时未更新"
fi

五、编程语言中对比(示例)

Python

import time

t1 = 1710000000
t2 = time.time()

print(t2 > t1)

如果你指的是:

  • 日志里的时间戳对比
  • 数据库时间戳
  • 毫秒 / 纳秒
  • shell / Python / C++ 对比

可以告诉我具体场景,我可以给更针对性的例子。

0 踩