Zaman Damgası Dönüştürücü

Unix zaman damgalarını okunabilir tarihlere dönüştür ve tersi

Mevcut Unix Zaman Damgası

1774458448

Wed, 25 Mar 2026 17:07:28 GMT

veya

Unix Zaman Damgası Nedir?

Unix zaman damgası (epoch zamanı veya POSIX zamanı olarak da bilinir), 1 Ocak 1970 00:00:00 UTC tarihinden bu yana geçen saniye sayısıdır. Bu tarihe Unix epoch denir. Her geçen saniye sayacı bir artırır ve böylece zamanın her anı tek bir tam sayıyla ifade edilir. Unix zaman damgası dönüştürücü, bu tam sayı ile ISO 8601, RFC 2822 veya yerel ayara özgü dizeler gibi okunabilir tarih biçimleri arasında çeviri yapar.

Unix zaman damgaları, bilgisayar sistemlerinde zamanı temsil etmenin standart yoludur. Veritabanları created_at ve updated_at sütunlarını tam sayı veya milisaniye zaman damgaları olarak saklar. API yanıtları; önbellek başlıkları (Expires, Last-Modified), JWT talepleri (iat, exp, nbf) ve olay günlükleri için zaman damgaları içerir. nginx, syslog ve uygulama çerçevelerinden gelen günlük dosyalarının tamamı epoch zamanını kullanır. Bu biçim belirsizlik içermez; çünkü her zaman UTC'yi temsil eder ve yanlış yorumlanabilecek saat dilimi veya yaz saati uygulaması farkı yoktur.

Zaman damgaları ile tarihler arasında elle dönüştürme yapmak hata yapmaya açıktır. 1711324800 gibi bir değer, temsil ettiği tarih hakkında görsel bir ipucu vermez. Bu araç, Unix zaman damgalarını okunabilir tarihlere ve tarihleri tekrar zaman damgalarına dönüştürür. İster bir JWT exp talebini okuyun, ister bir veritabanı sorgusunu hata ayıklayın, ister bir günlük zaman damgasını kontrol edin; 10 haneli (saniye) ve 13 haneli (milisaniye) değerleri otomatik olarak işler.

Bu Zaman Damgası Dönüştürücüyü Neden Kullanmalısınız?

Günlüklerden, veritabanlarından veya API yanıtlarından ham Unix zaman damgalarını okumak, ya epoch matematiğini ezberlemek ya da tek kullanımlık kod yazmak gerektirir. Bu dönüştürücü bunu sıfır kurulumla tarayıcınızda yapar. Bir JWT son kullanma tarihini çözmeniz, bir günlük satırını denetlemeniz veya bir veritabanı TTL değeri belirlemeniz gereksin; sonuç tek tıkla hazırdır. Araç, değerin 10 haneli saniye mi yoksa 13 haneli milisaniye zaman damgası mı olduğunu otomatik algılar; dolayısıyla hiçbir zaman 1000'e bölmeniz gerekmez. Tüm işlemler tarayıcınızda yerel olarak çalışır. Herhangi bir veri makinenizden çıkmaz; bu sayede dahili sistemlerden ve hassas günlüklerden alınan zaman damgaları gizli kalır.

Anlık Dönüştürme
Bir zaman damgası yazın veya bir tarih seçin, sonucu anında görün. Form gönderimi veya sayfa yenileme yoktur. Hem saniye hem de milisaniyeyi destekler.
🔒
Gizlilik Öncelikli İşleme
Tüm dönüştürmeler, JavaScript'in yerleşik Date nesnesi kullanılarak tarayıcınızda çalışır. Herhangi bir veri makinenizden çıkmaz; dahili sistemlerdeki zaman damgaları gizli kalır.
🔄
Çift Yönlü Dönüştürme
Unix zaman damgalarını tarihlere, tarihleri tekrar zaman damgalarına dönüştürün. Her iki yönde de değer girin ve araç değiştirmeden karşılık gelen çıktıyı alın.
🌐
Çoklu Çıktı Biçimleri
Zaman damganızı aynı anda UTC, yerel saat, ISO 8601 ve göreli zaman olarak görün. Herhangi bir biçimi tek tıkla kopyalayın.

Zaman Damgası Dönüştürücü Kullanım Senaryoları

Ön Uç Geliştirme
REST API yanıtlarındaki zaman damgalarını çözerek tarih gösterimlerinin saat dilimlerinde doğru şekilde işlendiğini doğrulayın. API'nin saniye mi yoksa milisaniye mi döndürdüğünü kontrol edin.
Arka Uç Mühendisliği
Sorguları hata ayıklarken veritabanı zaman damgalarını dönüştürün. Geçişler veya saat dilimi değişikliklerinden sonra created_at, updated_at ve expires_at değerlerinin beklenen tarihlerle eşleştiğini doğrulayın.
DevOps ve SRE
Günlük dosyalarından, izleme panolarından (Grafana, Datadog) ve uyarı sistemlerinden gelen epoch değerlerini çevirerek bir olayın ne zaman başladığını veya bir dağıtımın ne zaman tamamlandığını saptayın.
Kalite Güvence ve Test
Test fikstürleri için belirli zaman damgaları oluşturun. Token sona erme, önbellek TTL'leri ve zamanlanmış görevler gibi zamana bağlı özelliklerin doğru anda tetiklendiğini doğrulayın.
Veri Mühendisliği
PostgreSQL, MySQL veya veri ambarlarından alınan ham veri dışa aktarımlarını incelerken zaman damgası sütunlarını dönüştürün. ETL işlem hatlarının saat dilimi bilgilerini doğru şekilde koruduğunu onaylayın.
Öğrenme ve Eğitim
Bilgisayarların zamanı dahili olarak nasıl temsil ettiğini anlayın. Y2038 sorunu, 1970 öncesi tarihler için negatif zaman damgaları ve milisaniye hassasiyeti gibi uç durumları deneyin.

Unix Zaman Damgası Başvuru Tablosu

Aşağıdaki tablo, iyi bilinen Unix zaman damgalarını ve bunlara karşılık gelen tarihleri göstermektedir. Bu değerler hızlı doğrulama, test ve 32 bit ile 64 bit zaman damgalarının aralığını anlamak için faydalıdır.

Zaman DamgasıTarih (UTC)Not
0Jan 1, 1970 00:00:00 UTCUnix epoch start
86400Jan 2, 1970 00:00:00 UTCExactly 1 day
946684800Jan 1, 2000 00:00:00 UTCY2K
1000000000Sep 9, 2001 01:46:40 UTC10-digit milestone
1234567890Feb 13, 2009 23:31:30 UTCAscending digits
1700000000Nov 14, 2023 22:13:20 UTCRecent 10-digit
2000000000May 18, 2033 03:33:20 UTCNext 10-digit milestone
2147483647Jan 19, 2038 03:14:07 UTCY2038 (signed 32-bit max)
4102444800Jan 1, 2100 00:00:00 UTCNext century

Tarih ve Saat Biçimi Karşılaştırması

Farklı sistemler ve standartlar aynı anı farklı dize biçimleri kullanarak temsil eder. Bu tablo, API'lerde, günlüklerde ve veritabanlarında karşılaşacağınız en yaygın biçimleri karşılaştırır.

BiçimÖrnekNotlar
Unix (seconds)1711324800Integer, no timezone info
Unix (milliseconds)1711324800000Used by JavaScript Date.now()
ISO 86012024-03-25T00:00:00ZMachine-readable, includes timezone
RFC 2822Mon, 25 Mar 2024 00:00:00 +0000Email and HTTP headers
UTC stringMon, 25 Mar 2024 00:00:00 GMTDate.prototype.toUTCString()
Human readableMarch 25, 2024, 12:00:00 AMLocale-dependent, display only

Kod Örnekleri

Çalıştığınız dilde Unix zaman damgaları ile tarihler arasında dönüşüm yapın. Her örnek her iki yönü de gösterir: zaman damgasından tarihe ve tarihten zaman damgasına.

JavaScript (browser / Node.js)
// Current Unix timestamp in seconds
Math.floor(Date.now() / 1000)  // → 1711324800

// Unix timestamp to Date object
const date = new Date(1711324800 * 1000)
date.toISOString()             // → "2024-03-25T00:00:00.000Z"
date.toUTCString()             // → "Mon, 25 Mar 2024 00:00:00 GMT"

// Date string to Unix timestamp
Math.floor(new Date('2024-03-25T00:00:00Z').getTime() / 1000)
// → 1711324800

// Millisecond timestamps (common in JS APIs)
Date.now()                     // → 1711324800000 (ms)
Date.parse('2024-03-25')       // → 1711324800000 (ms)
Python
import time
from datetime import datetime, timezone

# Current Unix timestamp
int(time.time())                                    # → 1711324800

# Unix timestamp to datetime
dt = datetime.fromtimestamp(1711324800, tz=timezone.utc)
dt.isoformat()                                      # → '2024-03-25T00:00:00+00:00'
dt.strftime('%Y-%m-%d %H:%M:%S %Z')                 # → '2024-03-25 00:00:00 UTC'

# Datetime string to Unix timestamp
dt = datetime.fromisoformat('2024-03-25T00:00:00+00:00')
int(dt.timestamp())                                  # → 1711324800

# Parse RFC 2822 dates (from email headers)
from email.utils import parsedate_to_datetime
parsedate_to_datetime('Mon, 25 Mar 2024 00:00:00 +0000').timestamp()
# → 1711324800.0
Go
package main

import (
    "fmt"
    "time"
)

func main() {
    // Current Unix timestamp
    now := time.Now().Unix() // → 1711324800

    // Unix timestamp to time.Time
    t := time.Unix(1711324800, 0).UTC()
    fmt.Println(t.Format(time.RFC3339))
    // → 2024-03-25T00:00:00Z

    // Parse a date string to Unix timestamp
    parsed, _ := time.Parse(time.RFC3339, "2024-03-25T00:00:00Z")
    fmt.Println(parsed.Unix())
    // → 1711324800

    // Millisecond timestamp
    ms := time.Now().UnixMilli() // → 1711324800000
    fmt.Println(now, ms)
}
CLI (date / bash)
# Current Unix timestamp
date +%s                                    # → 1711324800

# Convert timestamp to human-readable date (GNU date)
date -d @1711324800                         # → Mon Mar 25 00:00:00 UTC 2024

# Convert timestamp to ISO 8601
date -d @1711324800 --iso-8601=seconds      # → 2024-03-25T00:00:00+00:00

# macOS (BSD date) — slightly different flags
date -r 1711324800                          # → Mon Mar 25 00:00:00 UTC 2024

# Date string to timestamp (GNU date)
date -d "2024-03-25 00:00:00 UTC" +%s       # → 1711324800

Sıkça Sorulan Sorular

Saniye cinsinden Unix zaman damgaları ile milisaniye cinsinden olanlar arasındaki fark nedir?
Saniye cinsinden bir Unix zaman damgası 10 haneli bir tam sayıdır (Kasım 2286'ya kadar); milisaniye zaman damgası ise 13 hanedir. JavaScript'in Date.now() fonksiyonu milisaniye döndürür. Çoğu Unix komut satırı aracı ve Python'ın time.time() fonksiyonu saniye döndürür. Aralarında dönüştürme yapmak için saniyeleri 1000 ile çarpın veya milisaniyeleri 1000'e bölüp sonucu aşağı yuvarlayın.
Yıl 2038 Sorunu nedir?
Unix zaman damgalarını işaretli 32 bit tam sayı olarak saklayan sistemler, 19 Ocak 2038 03:14:07 UTC tarihinde taşacaktır. İşaretli 32 bit tam sayının tutabileceği maksimum değer epoch'tan 2.147.483.647 saniyedir. Bu değerin aşılmasının ardından sayı negatife döner ve sistem bunu Aralık 1901'deki bir tarih olarak yorumlar. Modern 64 bit sistemler 64 bit tam sayı kullanır ve bu sorundan etkilenmez.
JavaScript'te bir Unix zaman damgasını tarihe nasıl dönüştürürüm?
JavaScript milisaniye kullandığından, zaman damgasını 1000 ile çarparak yeni bir Date nesnesi oluşturun: new Date(1711324800 * 1000). Ardından ihtiyacınız olan biçimi almak için .toISOString(), .toUTCString() veya .toLocaleString() metodunu çağırın. Tersi için Math.floor(new Date('2024-03-25').getTime() / 1000) kullanın.
Unix zaman damgaları 1970 öncesi tarihleri temsil edebilir mi?
Evet. Unix epoch'undan (1 Ocak 1970) önceki tarihler negatif tam sayılar olarak temsil edilir. Örneğin, 31 Aralık 1969 23:59:59 UTC, -1 zaman damgasına karşılık gelir. Modern programlama dillerinin çoğu negatif zaman damgalarını doğru şekilde işler; ancak bazı eski sistemler ve veritabanları bunları desteklemeyebilir.
API'ler neden tarih dizeleri yerine Unix zaman damgaları kullanır?
Unix zaman damgaları saat diliminden bağımsızdır, kompakttır (25+ karakterlik bir dize yerine tek bir tam sayı) ve kolayca karşılaştırılabilir. Tam sayılarla sıralama, karşılaştırma ve süre hesaplama, tarih dizelerini ayrıştırmaktan daha hızlıdır. Ayrıca MM/GG/YYYY ile GG/AA/YYYY gibi yerel ayara bağlı biçimlerin yol açtığı belirsizlikten kaçınırlar.
Komut satırından mevcut Unix zaman damgasını nasıl alabilirim?
Linux ve macOS'ta mevcut zaman damgasını saniye cinsinden yazdırmak için date +%s komutunu çalıştırın. Windows'ta PowerShell ile [DateTimeOffset]::UtcNow.ToUnixTimeSeconds() kullanın. Her ikisi de Unix epoch'undan bu yana geçen saniye sayısını tam sayı olarak döndürür. Linux'ta milisaniye hassasiyeti için milisaniye bileşenini doğrudan eklemek üzere date +%s%3N kullanın.
Zaman damgalarında UTC ile GMT arasındaki fark nedir?
Bilişim alanında pratik açıdan UTC ve GMT aynı zamanı ifade eder. UTC (Eşgüdümlü Evrensel Zaman), atom saatleri tarafından tanımlanan modern standarttır; GMT (Greenwich Ortalama Zamanı) ise daha eski olan astronomik standarttır. Unix zaman damgaları her zaman UTC'ye dayanır. Biçimlendirilmiş tarih dizelerinde her iki etiket de görülebilir; ancak temel değer aynıdır.