在 CentOS(以及大多数 Linux 系统)上,生成毫秒级时间戳常见有以下几种方式:
date(最常用)date +%s%3N
示例输出:
1700000000123
✅ 说明
%s:秒级时间戳%3N:毫秒(3 位)date 支持 %N(GNU coreutils,CentOS 默认支持)date + awk(兼容旧系统)date +%s | awk '{print $1 * 1000}'
⚠️ 这种方式不包含毫秒部分,只是秒 × 1000。
python(非常可靠)python -c "import time; print(int(time.time() * 1000))"
或 Python 3:
python3 -c "import time; print(int(time.time() * 1000))"
perlperl -MTime::HiRes -e 'printf "%d\n", Time::HiRes::time() * 1000'
bash + /proc(不推荐但可用)cat /proc/timer_list | grep "now at" | head -1
⚠️ 输出不是标准时间戳,不直观,不推荐。
| 方法 | 是否推荐 | 说明 |
|---|---|---|
date +%s%3N |
✅✅✅ | 最简单、最常用 |
| Python | ✅✅ | 兼容性好 |
| Perl | ✅ | 适合脚本 |
| 秒 × 1000 | ❌ | 无真实毫秒 |
TS=$(date +%s%3N)
echo "毫秒时间戳: $TS"
如果你需要 微秒 / 纳秒时间戳,或用于 日志、文件名、性能统计,我也可以帮你一起设计。