logo
GeekFormat

Công cụ chuyển đổi Unix Timestamp

Unix timestamp hiện tại
1784571490
2026-07-21 02:18:10 (UTC)

Ví dụ mã

JavaScript
// Lấy timestamp hiện tại new Date(Chuyển timestamp thành ngày).toLocaleString()
Python
import time time.time() # Lấy timestamp hiện tại time.ctime(1800000000) # Chuyển timestamp thành ngày
Go
import "time" time.Now().Unix() // Lấy timestamp hiện tại time.Unix(1800000000, 0).String()
Bash
# Lấy timestamp hiện tại date +%s # Chuyển timestamp thành ngày date -d @1800000000

Unix timestamp là số giây đã trôi qua kể từ 00:00:00 UTC ngày 1 tháng 1 năm 1970.

Công cụ chuyển đổi Unix Timestamp trực tuyến miễn phí với chuyển đổi hai chiều giây/mili giây/micro giây, tự động nhận dạng đơn vị, công tắc múi giờ UTC/Địa phương và các ví dụ mã đa ngôn ngữ tích hợp sẵn. Sẵn sàng sử dụng tức thì để phát triển và gỡ lỗi.

Đề xuất Liên quan

Unix Timestamp là gì?

Unix Timestamp (còn gọi là Epoch Time hoặc POSIX Time) là một cách biểu diễn thời gian dưới dạng một số duy nhất: số đếm giây đã trôi qua kể từ ngày 1 tháng 1 năm 1970, 00:00:00 UTC (Unix Epoch), không tính giây nhuận. Tại chính Unix Epoch, timestamp có giá trị là 0.

Ưu điểm lớn nhất của timestamp là tính độc lập với múi giờ—cùng một thời điểm tạo ra cùng một timestamp ở mọi nơi trên Trái đất, không có vấn đề chuyển đổi múi giờ. Điều này làm cho chúng lý tưởng cho: thời gian tạo/cập nhật bản ghi cơ sở dữ liệu, theo dõi nhật ký trong hệ thống phân tán (ID trace/span với timestamp), tham số thời gian API, thời gian hết hạn token JWT, giá trị TTL bộ đệm và thời gian sửa đổi hệ thống tệp.

Các ngôn ngữ và hệ thống khác nhau sử dụng độ chính xác khác nhau: C/Unix/Python mặc định sử dụng giây (10 chữ số), JavaScript/Java sử dụng mili giây (13 chữ số) và các hệ thống độ chính xác cao (giao dịch tài chính, tính toán khoa học) sử dụng micro giây (16 chữ số) hoặc thậm chí nano giây (19 chữ số). Công cụ này bao gồm ba độ chính xác phổ biến nhất: giây, mili giây và micro giây.

Trường hợp sử dụng

  • Chuyển đổi timestamp trong tệp nhật ký thành ngày tháng có thể đọc được trong quá trình gỡ lỗi để nhanh chóng xác định thời điểm xảy ra sự cố
  • Xác minh các trường timestamp trong trọng tải yêu cầu/phản hồi trong quá trình tích hợp API
  • Chuyển đổi thời gian nghiệp vụ thành timestamp cho các truy vấn phạm vi thời gian SQL trong hoạt động cơ sở dữ liệu
  • So sánh timestamp UTC với giờ địa phương trong quá trình vận hành máy chủ để khắc phục sự cố triển khai xuyên múi giờ
  • Sao chép các đoạn mã để lấy timestamp bằng các ngôn ngữ khác nhau khi viết tập lệnh
  • Chuyển đổi các ngày lịch sử (trước 1970) hoặc tương lai thành timestamp để kiểm tra các trường hợp biên

Cách Sử dụng

  1. Phần đầu trang hiển thị Unix Timestamp hiện tại theo thời gian thực có thể được sao chép trực tiếp bằng một cú nhấp chuột
  2. Để chuyển đổi timestamp thành ngày tháng: Nhập timestamp vào tab 'Timestamp → Ngày tháng'—công cụ tự động phát hiện giây/mili giây/micro giây
  3. Chọn múi giờ UTC hoặc Địa phương; kết quả xuất hiện tức thì và có thể được sao chép bằng nút sao chép
  4. Để chuyển đổi ngày tháng thành timestamp: Chuyển đến tab 'Ngày tháng → Timestamp' và điền vào các trường năm/tháng/ngày/giờ/phút/giây
  5. Sau khi chọn múi giờ, timestamp giây xuất hiện tức thì—sao chép một cú nhấp chuột cho mã hoặc truy vấn

Tính năng

  • Tự động nhận dạng đơn vị: Dán bất kỳ timestamp nào và nó tự động xác định giây/mili giây/micro giây—không cần lựa chọn thủ công
  • Ba cấp độ chính xác: Phạm vi đầy đủ giây (10 chữ số), mili giây (13 chữ số) và micro giây (16 chữ số) cho tất cả các ngôn ngữ và hệ thống
  • Công tắc UTC/Địa phương: UTC cho nhật ký máy chủ, Địa phương cho giờ nghiệp vụ—chuyển đổi một cú nhấp chuột để so sánh
  • Nhập ngày từng trường: Các hộp nhập riêng biệt năm/tháng/ngày/giờ/phút/giây để chuyển đổi ngày sang timestamp—không cần ghi nhớ định dạng ngày
  • Hiển thị timestamp trực tiếp: Unix Timestamp hiện tại theo thời gian thực với ngày UTC hiển thị ở đầu trang, sao chép một cú nhấp chuột
  • Đoạn mã đa ngôn ngữ: Mã JavaScript/Python/Go/Bash tích hợp sẵn để lấy và chuyển đổi timestamp, sao chép một cú nhấp chuột
  • Hỗ trợ timestamp âm: Chuyển đổi bất kỳ ngày nào từ 1920 đến 2100, bao gồm các ngày lịch sử và tương lai
  • Tính toán phía máy khách: Tất cả các chuyển đổi chạy cục bộ trong trình duyệt của bạn—timestamp không bao giờ được gửi đến bất kỳ máy chủ nào

Ví dụ mã

Lấy và Chuyển đổi Timestamp trong JavaScript

javascript

Các phương pháp phổ biến để lấy timestamp giây/mili giây hiện tại trong trình duyệt và Node.js, và chuyển đổi chúng thành giờ địa phương có thể đọc được.

// Lấy timestamp giây hiện tại
const tsSec = Math.floor(Date.now() / 1000);
console.log(tsSec); // ví dụ 1700000000

// Lấy timestamp mili giây hiện tại
const tsMs = Date.now();
console.log(tsMs); // ví dụ 1700000000000

// Timestamp giây sang giờ địa phương có thể đọc được
const date = new Date(tsSec * 1000);
console.log(date.toLocaleString('vi-VN'));
// "15/11/2023 05:13:20"

// Timestamp mili giây sang định dạng ISO
console.log(new Date(tsMs).toISOString());
// "2023-11-14T22:13:20.000Z"

Xử lý Timestamp trong Python

python

Sử dụng các mô-đun thư viện chuẩn time và datetime của Python để lấy và chuyển đổi timestamp, bao gồm xử lý múi giờ.

import time
from datetime import datetime, timezone

# Lấy timestamp giây hiện tại
ts = int(time.time())
print(ts)  # 1700000000

# Timestamp sang chuỗi giờ địa phương
print(time.ctime(ts))
# 'Wed Nov 15 05:13:20 2023'

# Timestamp sang thời gian định dạng
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(ts)))
# '2023-11-15 05:13:20'

# Timestamp sang giờ UTC
print(datetime.fromtimestamp(ts, tz=timezone.utc))
# 2023-11-14 22:13:20+00:00

Thao tác Timestamp trên dòng lệnh Linux/macOS

bash

Các lệnh shell phổ biến để lấy timestamp hiện tại và chuyển đổi chúng, lưu ý sự khác biệt giữa date GNU của Linux và date BSD của macOS.

# Lấy timestamp giây hiện tại (hoạt động trên cả Linux và macOS)
date +%s

# Timestamp sang ngày tháng (Linux GNU date)
date -d @1700000000
# "Wed Nov 15 05:13:20 +07 2023"

# Timestamp sang ngày tháng (macOS BSD date)
date -r 1700000000

# Timestamp sang ngày UTC (Linux)
date -u -d @1700000000
# "Tue Nov 14 22:13:20 UTC 2023"

# Đầu ra định dạng tùy chỉnh
date -d @1700000000 '+%Y-%m-%d %H:%M:%S'

Câu hỏi Thường gặp

Unix Timestamp là gì?

Unix Timestamp (còn gọi là Epoch Time hoặc POSIX Time) là số giây đã trôi qua kể từ ngày 1 tháng 1 năm 1970, 00:00:00 UTC (Giờ phối hợp quốc tế), không tính giây nhuận. Ví dụ, 1700000000 tương ứng với 2023-11-14 22:13:20 UTC. Nó độc lập với múi giờ—cùng một timestamp đại diện cho cùng một thời điểm ở mọi nơi trên Trái đất—khiến nó trở thành tiêu chuẩn cho ghi thời gian xuyên hệ thống, theo dõi nhật ký, tham số API và lưu trữ cơ sở dữ liệu.

Làm thế nào để phân biệt timestamp giây, mili giây và micro giây?

Dựa trên số chữ số: 10 chữ số = giây (ví dụ: 1700000000), 13 chữ số = mili giây (ví dụ: 1700000000000), 16 chữ số = micro giây (ví dụ: 1700000000000000). Công cụ này tự động phát hiện đơn vị dựa trên số chữ số bạn dán—không cần lựa chọn thủ công. Nó cũng tự động cắt khoảng trắng, vì vậy bạn có thể dán trực tiếp từ nhật ký.

Tại sao timestamp trong nhật ký lệch 8 giờ so với giờ địa phương?

Unix Timestamp vốn dựa trên UTC. Nếu múi giờ địa phương của bạn là UTC+8 (ví dụ: Giờ chuẩn Trung Quốc), việc chuyển đổi timestamp UTC bằng quy tắc múi giờ địa phương sẽ hiển thị chênh lệch 8 giờ. Công cụ này cung cấp công tắc UTC/Địa phương—sử dụng UTC khi đọc nhật ký máy chủ (hầu hết máy chủ sử dụng UTC) và giờ địa phương cho các timestamp liên quan đến nghiệp vụ.

Làm thế nào để lấy và chuyển đổi timestamp trong JavaScript?

Lấy timestamp giây hiện tại bằng `Math.floor(Date.now() / 1000)`, mili giây bằng `Date.now()`; chuyển đổi sang thời gian có thể đọc được bằng `new Date(ts * 1000).toLocaleString()` (nhân giây với 1000, truyền mili giây trực tiếp). Các đoạn mã tích hợp sẵn cho JavaScript, Python, Go và Bash được cung cấp ở cuối trang để sao chép trực tiếp.

Timestamp có thể là số âm không? Chúng đại diện cho điều gì?

Có. Timestamp âm đại diện cho các ngày trước ngày 1 tháng 1 năm 1970. Ví dụ, -1 tương ứng với 1969-12-31 23:59:59 UTC. Công cụ này hỗ trợ timestamp âm và bao gồm các ngày từ 1920 đến 2100, hỗ trợ cả ngày lịch sử và ngày trong tương lai.

Vấn đề năm 2038 là gì? Nó có ảnh hưởng đến việc sử dụng không?

Vấn đề năm 2038 xảy ra khi các hệ thống sử dụng số nguyên có dấu 32-bit để lưu trữ Unix Timestamp bị tràn sau ngày 19 tháng 1 năm 2038, 03:14:07 UTC, khiến ngày tháng quay về giá trị âm. Các hệ thống hiện đại sử dụng số nguyên 64-bit (an toàn trong ~292 tỷ năm) và JavaScript sử dụng số dấu phẩy động 64-bit (an toàn đến năm 285.616 với độ chính xác mili giây). Vì công cụ này chạy trong trình duyệt của bạn bằng JavaScript, nó không bị ảnh hưởng.

Tại sao nên sử dụng công cụ chuyển đổi trực tuyến thay vì dòng lệnh?

Các công cụ dòng lệnh (như `date` của Linux) yêu cầu ghi nhớ các cờ định dạng và tham số khác nhau trên các nền tảng (GNU date của Linux và BSD date của macOS có các cờ khác nhau). Công cụ này hoạt động tức thì trong trình duyệt của bạn, tự động phát hiện đơn vị, cung cấp các trường nhập ngày tháng trực quan (các trường riêng biệt năm/tháng/ngày/giờ/phút/giây—không cần ghi nhớ định dạng ngày), chuyển đổi múi giờ và các đoạn mã đa ngôn ngữ tích hợp sẵn.

Thuật ngữ

Unix Timestamp
Số giây đã trôi qua kể từ 1970-01-01 00:00:00 UTC, 10 chữ số, độc lập với múi giờ, nhất quán toàn cầu.
Epoch Time
Tên thay thế cho Unix Timestamp, đề cập đến thời gian được đếm từ Unix Epoch (1970-01-01 UTC).
Timestamp Giây
Độ chính xác 10 chữ số đến giây (ví dụ: 1700000000), mặc định trong Unix/Python/C.
Timestamp Mili giây
Độ chính xác 13 chữ số đến 1/1000 giây (ví dụ: 1700000000000), mặc định trong JavaScript/Java.
Timestamp Micro giây
Độ chính xác 16 chữ số đến 1/1.000.000 giây (ví dụ: 1700000000000000), được sử dụng trong các hệ thống độ chính xác cao.
UTC
Giờ phối hợp quốc tế, tiêu chuẩn thời gian toàn cầu và cơ sở cho tính toán múi giờ, tương đương khoảng với GMT.
Độ lệch múi giờ
Sự khác biệt giữa giờ địa phương và UTC, ví dụ: miền Đông Hoa Kỳ là UTC-5 (giờ chuẩn), Giờ chuẩn Trung Quốc là UTC+8.
ISO 8601
Tiêu chuẩn quốc tế về định dạng ngày/giờ (ví dụ: 2024-01-15T08:30:00+08:00), tiêu chuẩn cho tham số API.
Vấn đề năm 2038
Sự tràn của timestamp số nguyên có dấu 32-bit sau ngày 19 tháng 1 năm 2038; hệ thống 64-bit và JavaScript không bị ảnh hưởng.

Chuyển đổi đơn vị thời gian phổ biến

Đơn vị thời gianGiâyVí dụ sử dụng
1 phút60TTL bộ đệm ngắn, thời gian chờ API
1 giờ3,600Token ngắn hạn, thời gian chờ phiên
1 ngày86,400Thống kê hàng ngày, báo cáo hàng ngày
1 tuần604,800Báo cáo hàng tuần, thời hạn cookie
1 tháng (30,44 ngày)2,629,743Thanh toán hàng tháng, chu kỳ đăng ký
1 năm (365,24 ngày)31,556,926Dữ liệu hàng năm, JWT token dài hạn

Thao tác Timestamp theo Ngôn ngữ lập trình

Ngôn ngữLấy Hiện tại (giây)Timestamp sang Có thể đọc
JavaScriptMath.floor(Date.now()/1000)new Date(ts*1000).toLocaleString()
Pythonimport time; int(time.time())import time; time.ctime(ts)
JavaSystem.currentTimeMillis()/1000new Date(ts*1000L).toString()
Gotime.Now().Unix()time.Unix(ts, 0).String()
PHPtime()date('Y-m-d H:i:s', ts)
MySQLSELECT UNIX_TIMESTAMP()SELECT FROM_UNIXTIME(ts)
Bash (Linux)date +%sdate -d @ts
Bash (macOS)date +%sdate -r ts

Authoritative References