Penukar Cap Masa Unix

Tukar cap masa Unix kepada tarikh yang mudah dibaca, atau tarikh kepada masa epoch, dalam sebarang zon waktu. Saat, milisaat, mikrosaat dan nanosaat dikesan secara automatik.

Masa Unix semasa—— ms

 

Tarikh dan masa

 

Tarikh dan masa
—

Penukar pukal

Tampal banyak cap masa atau tarikh, satu setiap baris. Nombor menjadi tarikh dan tarikh menjadi cap masa; unit dikesan pada setiap baris.

Cara menukar cap masa Unix

  1. Taip atau tampal cap masa Unix dalam kotak kiri. Alat ini menentukan sama ada ia dalam saat (10 digit), milisaat (13), mikrosaat (16) atau nanosaat (19). Anda juga boleh memilih unit sendiri.
  2. Untuk menukar tarikh kepada cap masa, pilih tarikh dan masa di sebelah kanan. Bahagian yang anda sunting menjadi input, dan hasilnya menunjukkan bahagian yang satu lagi.
  3. Pilih zon waktu. Waktu tempatan ialah zon peranti anda. Senarai di bawah hasil menunjukkan detik itu dalam zon tersebut dan dalam UTC, sebagai ISO 8601, RFC 2822, tarikh HTTP, masa relatif dan nombor siri Excel, masing-masing dengan butang salinnya sendiri.
  4. Gunakan butang pantas untuk sekarang, permulaan hari, minggu, bulan atau tahun, atau untuk melangkah sejam atau sehari. Untuk menukar satu lajur penuh, tampalkannya ke dalam Penukar pukal dan salin hasilnya sebagai CSV.

Apakah cap masa Unix?

Masa Unix, juga dipanggil masa epoch atau masa POSIX, ialah bilangan saat yang telah berlalu sejak 00:00:00 UTC pada 1 Januari 1970, iaitu epoch Unix. Pada akhir 2026, ia ialah nombor 10 digit yang hampir 1.8 bilion. Oleh sebab ia satu nombor tanpa zon waktu, inilah cara komputer, pangkalan data, API dan fail log menyimpan detik masa. Menukarnya kepada tarikh kalendar hanyalah langkah paparan, dan langkah itu bergantung pada zon waktu yang anda mahu lihat.

Saat, milisaat, mikrosaat dan nanosaat

Alat Unix klasik, PHP, MySQL dan time.time() dalam Python mengira dalam saat. Date.now() dalam JavaScript, System.currentTimeMillis() dalam Java dan banyak API JSON menggunakan milisaat, yang menambah tiga digit. Mikrosaat (16 digit) muncul dalam PostgreSQL dan sesetengah alat analitik, dan nanosaat (19 digit) dalam Go dan log beresolusi tinggi. Penukar ini meneka unit daripada saiz nombor: apa-apa sehingga 11 digit dibaca sebagai saat, yang merangkumi setiap tarikh hingga tahun 5138. Contohnya, 1700000000 ialah 14 November 2023, 22:13:20 UTC, dan 1700000000000 ialah detik yang sama dalam milisaat.

Zon waktu, waktu musim panas dan saat lompat

Cap masa adalah sama di seluruh dunia; hanya bacaan tempatannya yang berubah. Itulah sebabnya menukar tarikh kembali kepada cap masa memerlukan zon waktu: pukul 09:00 di Kuala Lumpur dan pukul 09:00 di New York ialah detik yang berbeza. Apabila jam ditukar untuk waktu musim panas, sesetengah waktu tempatan tidak wujud langsung dan yang lain berlaku dua kali. Penukar memberi amaran dalam kedua-dua kes dan memberitahu detik mana yang dipilih. Masa Unix juga mengabaikan saat lompat: setiap hari tepat 86,400 saat, jadi aritmetik tarikh kekal mudah.

Cap masa negatif dan masalah tahun 2038

Tarikh sebelum 1970 mempunyai cap masa negatif; −86400 ialah 31 Disember 1969. Sistem lama menyimpan masa Unix sebagai integer 32-bit bertanda, yang nilai terbesarnya, 2147483647, dicapai pada 19 Januari 2038 pukul 03:14:07 UTC. Sesaat kemudian, pembilang sedemikian berbalik ke Disember 1901. Sistem pengendalian dan bahasa moden menggunakan masa 64-bit, tetapi peranti terbenam dan format fail lama mungkin masih terjejas. Setiap penukaran di halaman ini berjalan dalam pelayar anda; tiada apa yang dihantar ke pelayan.

Masa Unix dalam bahasa pengaturcaraan

Cara mendapatkan cap masa Unix semasa dalam saat, dan cara menukar cap masa ts kembali kepada tarikh, dalam bahasa dan alat yang popular.

BahasaCap masa semasaCap masa → tarikh
JavaScriptMath.floor(Date.now() / 1000)new Date(ts * 1000)
Pythonint(time.time())datetime.fromtimestamp(ts, timezone.utc)
PHPtime()date('c', $ts)
JavaInstant.now().getEpochSecond()Instant.ofEpochSecond(ts)
C#DateTimeOffset.UtcNow.ToUnixTimeSeconds()DateTimeOffset.FromUnixTimeSeconds(ts)
Gotime.Now().Unix()time.Unix(ts, 0)
RubyTime.now.to_iTime.at(ts)
SwiftInt(Date().timeIntervalSince1970)Date(timeIntervalSince1970: ts)
Bashdate +%sdate -d @1700000000 (GNU) · date -r 1700000000 (macOS)
PowerShell[DateTimeOffset]::UtcNow.ToUnixTimeSeconds()[DateTimeOffset]::FromUnixTimeSeconds(ts)
MySQLUNIX_TIMESTAMP()FROM_UNIXTIME(ts)
PostgreSQLEXTRACT(EPOCH FROM now())::bigintto_timestamp(ts)
SQLitestrftime('%s', 'now')datetime(ts, 'unixepoch')
Excel / Sheets=(NOW()-DATE(1970,1,1))*86400=A1/86400+DATE(1970,1,1)

Python memerlukan import time dan from datetime import datetime, timezone; Java menggunakan java.time.Instant. Dalam Excel, formatkan sel hasil sebagai tarikh dan masa.

Soalan lazim

Apakah cap masa Unix semasa?

Pembilang langsung di bahagian atas halaman menunjukkan masa Unix semasa dalam saat dan milisaat serta dikemas kini setiap detik. Pada 31 Oktober 2026, ia kira-kira 1,793,000,000. Gunakan butang Salin untuk mengambilnya, atau tekan Sekarang untuk menukarnya.

Adakah cap masa Unix dalam UTC?

Ya. Cap masa Unix mengira saat dari tengah malam UTC pada 1 Januari 1970 dan tidak membawa zon waktu, jadi nombor yang sama bermaksud detik yang sama di mana-mana. Hanya apabila anda memaparkannya sebagai tarikh, anda memilih zon, seperti waktu tempatan anda atau UTC.

Mengapa cap masa saya ditukar kepada tahun 1970 atau tarikh yang jauh pada masa depan?

Unitnya salah. Cap masa milisaat yang dibaca sebagai saat jatuh berpuluh ribu tahun pada masa depan, dan cap masa saat yang dibaca sebagai milisaat jatuh pada Januari 1970. Biarkan unit pada Auto, atau pilih saat, milisaat, mikrosaat atau nanosaat secara manual.

Bagaimanakah cara menukar cap masa Unix dalam Excel atau Google Sheets?

Gunakan =A1/86400+DATE(1970,1,1) dan formatkan sel sebagai tarikh dan masa. Bagi milisaat, bahagikan dengan 86400000. Hasilnya dalam UTC; tambah ofset jam dibahagi 24 untuk zon waktu anda, contohnya +8/24 untuk Kuala Lumpur.

Apakah yang berlaku kepada masa Unix pada tahun 2038?

Sistem yang menyimpan cap masa sebagai nombor 32-bit bertanda melimpah pada 2,147,483,647, iaitu 19 Januari 2038, 03:14:07 UTC. Saat berikutnya akan dibaca sebagai 13 Disember 1901. Sistem yang menggunakan masa 64-bit, termasuk sistem pengendalian dan bahasa moden, tidak terjejas.