在 CentOS(本质是 Linux)里,“时间戳对比”通常指 UNIX 时间戳(秒/毫秒)之间的比较或转换后比较。下面按常见场景给你说明。
UNIX 时间戳:
17000000001700000000000ts1=1700000000
ts2=1701234567
if [ "$ts1" -lt "$ts2" ]; then
echo "ts1 早于 ts2"
fi
✅ 时间戳本质是数字,直接比较即可
date +%s
date +%s%3N
date -d @1700000000
date -d @$((1700000000000/1000))
date -d "2023-11-15 10:13:20" +%s
start=$(date +%s)
sleep 2
end=$(date +%s)
diff=$((end - start))
echo "耗时: ${diff} 秒"
如果日志是:
2023-11-15 10:00:00
2023-11-15 10:05:00
转成时间戳再比:
t1=$(date -d "2023-11-15 10:00:00" +%s)
t2=$(date -d "2023-11-15 10:05:00" +%s)
echo $((t2 - t1))
awk 对比(日志/文件)awk -F',' '$1 > 1700000000 {print}' file.log
❌ 毫秒不能直接用 date -d @
✅ 必须 /1000
❌ 时区影响显示,不影响时间戳大小
如果你有 具体场景(比如:日志对比、脚本判断超时、某个命令输出时间戳),可以直接贴出来,我可以给你写具体命令。