部落格
在 Mac 轉換 Unix 時間戳記,分清單位與時區
先確認單位,再比較 UTC 與本機時間,最後複製目標系統需要的日期或時間戳記格式。
日誌或 API 回應包含 Unix 時間戳記時,轉換前先確認數值使用秒還是毫秒,再確認正在閱讀的是哪個時區。在 Frset 中,Timestamp 工具可將數字時間戳記轉成日期,也能將本機日期字串轉回秒或毫秒。
區分時間點與顯示方式
Unix 時間戳記以 Unix 紀元為基準計算時間。同一個時間點,在 UTC 與 Mac 本機時區中可能顯示不同。Python 的日期與時間文件說明了時間戳記轉換及時區的作用。
例如,1704067200 秒與 1704067200000 毫秒代表同一個時間點:UTC 2024 年 1 月 1 日 00:00:00。在 Asia/Shanghai,這個時間點是 1 月 1 日 08:00:00。兩種顯示相差八小時,不代表底層的任一時間戳記需要再加上八小時。
用 Frset 轉換時間戳記
- 開啟 Frset 搜尋,選擇 Timestamp;若未修改,可使用預設關鍵字
/time。 - 選擇時間戳記轉日期模式。
- 只貼上數值,不要包含欄位名稱或引號。
- 執行轉換,確認工具辨識的單位是秒還是毫秒。
- 比較本機與 UTC 輸出,再複製需要的表示方式。
工具的輸出設定可包含本機時間、UTC、ISO 8601 與 RFC 3339。若少了需要的表示方式,請確認哪些輸出已啟用。轉換成功的結果會複製到剪貼簿,並加入歷史。
依目前實作限制,Frset 接受 9 或 10 位數的秒值,以及 12 或 13 位數的毫秒值,支援範圍為 UTC 2000 年 1 月 1 日至 2100 年 1 月 1 日。此工具不支援負值、小數輸入及範圍外的日期。數值被拒絕,不代表來源資料在所有系統中都無效。
將本機日期轉回時間戳記
切換至日期轉時間戳記模式,以 yyyy-MM-dd HH:mm:ss 格式輸入日期,例如 2024-01-01 08:00:00。選擇以秒或毫秒輸出,再執行工具。
輸入會依 Mac 目前的時區解讀。若 Mac 設為 Asia/Shanghai,範例就對應 1704067200 秒。換成其他時區,相同的日期文字可能代表不同時間點。轉換同事傳來的排程時間前,請先確認 Mac 時區。
這個欄位不是通用日期解析器。不要貼入帶有 Z 後綴的 ISO 日期或任意自然語言日期,再假設工具能正確解讀。請使用要求的格式,並另外確認預期時區。
結果看起來不對時,確認三件事
- 單位:要求毫秒的系統,需要的數值與要求秒的系統不同。請查閱 API 文件,不要只靠位數判斷。
- 時區:修改原始數字前,先比較 UTC 與本機輸出。顯示上的時差不一定代表資料錯誤。
- 意義:確認欄位記錄的是建立、更新、到期,還是排程事件。轉換正確不代表已了解欄位用途。
只複製目標需要的值。若需要的是數字,就不要貼上含標籤與多種日期格式的完整結果區塊。將到期或排程時間套用到實際系統前,請再檢查一次。
將來源與轉換結果放在一起
調查回應內容時,請在工作筆記保留欄位名稱、原始值與預期單位。JSON 指南能幫助你看清回應結構,剪貼板歷史則方便再次找回複製的來源。
時間戳記轉換在本機執行,不需要 AI 供應商。可用的工具次數依 Frset 方案而定;無論使用哪個方案,都需要注意轉換的單位、範圍與時區規則。