ToolHub
View All Posts

Unix टाइमस्टैम्प विस्तार से: प्रारूपों के बीच रूपांतरण

Unix Timestamp कंप्यूटिंग में सबसे मौलिक अवधारणाओं में से एक है, फिर भी कई डेवलपर और डेटा पेशेवर इससे भ्रमित रहते हैं। चाहे आप API प्रतिक्रियाओं को डीबग कर रहे हों, लॉग फ़ाइलों का विश्लेषण कर रहे हों, या शेड्यूलिंग सिस्टम बना रहे हों, Unix Timestamp कैसे काम करता है और प्रारूपों के बीच कैसे रूपांतरित करें, यह समझना एक आवश्यक कौशल है।

Unix टाइमस्टैम्प क्या है?

Unix Timestamp, जिसे epoch time या POSIX time भी कहा जाता है, 1 जनवरी 1970, 00:00:00 UTC से बीते सेकंडों की संख्या है (लीप सेकंड को छोड़कर)। इस संदर्भ बिंदु को Unix Epoch कहा जाता है। टाइमस्टैम्प एकल पूर्णांक के रूप में संग्रहीत होते हैं, जिससे तुलना, छँटाई और समय अंतर की गणना आसान हो जाती है।

उदाहरण के लिए, Unix Timestamp 1700000000 14 नवंबर 2023, 22:13:20 UTC के अनुरूप है। समय को एकल संख्या के रूप में प्रस्तुत करने की सरलता Unix Timestamp को ऑपरेटिंग सिस्टम, डेटाबेस और प्रोग्रामिंग भाषाओं में समय प्रतिनिधित्व के लिए मानक बनाती है।

Unix टाइमस्टैम्प क्यों उपयोग करें

सामान्य टाइमस्टैम्प प्रारूप

विभिन्न सिस्टम विभिन्न टाइमस्टैम्प प्रारूपों का उपयोग करते हैं। इन अंतरों को समझने से आपको उनके बीच सटीक रूपांतरण करने में मदद मिलती है।

प्रारूपउदाहरणउपयोगकर्ता
Unix सेकंड1700000000Linux, API, डेटाबेस
Unix मिलीसेकंड1700000000000JavaScript, Java
Unix माइक्रोसेकंड1700000000000000Python, Go
ISO 86012023-11-14T22:13:20ZREST API, JSON
RFC 2822Tue, 14 Nov 2023 22:13:20 +0000ईमेल हेडर, HTTP

Unix टाइमस्टैम्प को पठनीय दिनांक में बदलें

JavaScript में

JavaScript टाइमस्टैम्प को मिलीसेकंड में प्रस्तुत करता है। सेकंड में Unix Timestamp को JavaScript Date ऑब्जेक्ट में बदलने के लिए, पहले 1000 से गुणा करें। फिर आउटपुट को फ़ॉर्मेट करने के लिए toLocaleString() या toISOString() जैसी विधियों का उपयोग करें।

Python में

Python का datetime मॉड्यूल Unix Timestamp को datetime ऑब्जेक्ट में बदलने के लिए fromtimestamp() विधि प्रदान करता है। Python datetime.fromtimestamp(ts, tz=timezone.utc) के माध्यम से माइक्रोसेकंड सटीकता वाले टाइमस्टैम्प का भी समर्थन करता है।

कमांड लाइन में

Linux और macOS पर, date कमांड टाइमस्टैम्प को रूपांतरित कर सकता है। Unix Timestamp से पठनीय दिनांक प्राप्त करने के लिए Linux पर date -d @1700000000 या macOS पर date -r 1700000000 का उपयोग करें।

ऑनलाइन टूल का उपयोग करना

टाइमस्टैम्प रूपांतरित करने का सबसे तेज़ तरीका ऑनलाइन कनवर्टर का उपयोग करना है। अपना टाइमस्टैम्प पेस्ट करें, और टूल तुरंत संबंधित दिनांक और समय (कई प्रारूपों में) प्रदर्शित करता है। त्वरित रूपांतरण के लिए हमारा मुफ़्त टाइमस्टैम्प कनवर्टर आज़माएँ।

दिनांक को Unix टाइमस्टैम्प में बदलें

रिवर्स रूपांतरण—पठनीय दिनांक को Unix टाइमस्टैम्प में बदलना—उतना ही महत्वपूर्ण है। API को दिनांक भेजते समय, उपयोगकर्ता-चयनित दिनांक संग्रहीत करते समय, या भविष्य की घटनाओं को शेड्यूल करते समय इसकी अक्सर आवश्यकता होती है।

JavaScript में, एक Date ऑब्जेक्ट बनाएँ और मिलीसेकंड टाइमस्टैम्प प्राप्त करने के लिए getTime() कॉल करें, फिर सेकंड प्राप्त करने के लिए 1000 से विभाजित करें। Python में, सीधे Unix Timestamp प्राप्त करने के लिए datetime.timestamp() का उपयोग करें। अधिकांश प्रोग्रामिंग भाषाएँ समान अंतर्निहित विधियाँ प्रदान करती हैं।

2038 समस्या

32-बिट हस्ताक्षरित पूर्णांक का उपयोग करके Unix Timestamp संग्रहीत करने वाले सिस्टम 19 जनवरी 2038, 03:14:07 UTC को ओवरफ़्लो हो जाएँगे। उस बिंदु पर, टाइमस्टैम्प 2147483647 तक पहुँच जाएगा, जो 32-बिट हस्ताक्षरित पूर्णांक का अधिकतम मान है, फिर ऋणात्मक में बदल जाएगा, जिससे दिनांक 1901 के रूप में प्रदर्शित होंगे।

यह समस्या, जिसे Year 2038 Problem या Y2K38 के रूप में जाना जाता है, पुराने सिस्टम और एम्बेडेड डिवाइसों को प्रभावित करती है। समाधान टाइमस्टैम्प संग्रहीत करने के लिए 64-बिट पूर्णांक का उपयोग करना है, जो प्रतिनिधित्व योग्य सीमा को लगभग 292 अरब वर्षों तक विस्तारित करता है। अधिकांश आधुनिक ऑपरेटिंग सिस्टम, डेटाबेस और प्रोग्रामिंग भाषाएँ 64-बिट टाइमस्टैम्प में संक्रमण कर चुकी हैं।

डेवलपर टिप: डेटाबेस और API में टाइमस्टैम्प संग्रहीत करते समय हमेशा 64-बिट पूर्णांक का उपयोग करें। यदि आप JavaScript का उपयोग करते हैं, तो याद रखें कि Date.getTime() सेकंड नहीं बल्कि मिलीसेकंड लौटाता है। सेकंड की अपेक्षा करने वाले सिस्टम के साथ इंटरैक्ट करते समय 1000 से विभाजित करें।

समय क्षेत्रों को संभालना

Unix टाइमस्टैम्प हमेशा UTC का उपयोग करता है, समय क्षेत्र अस्पष्टता को समाप्त करता है। हालाँकि, उपयोगकर्ता को टाइमस्टैम्प प्रदर्शित करने के लिए उनके स्थानीय समय क्षेत्र में रूपांतरण की आवश्यकता होती है। यहाँ मुख्य विचार हैं:

सामान्य नुकसान

Unix टाइमस्टैम्प और पठनीय दिनांक के बीच रूपांतरण चाहिए? हमारा मुफ़्त टाइमस्टैम्प कनवर्टर आज़माएँ।

टाइमस्टैम्प कनवर्टर आज़माएँ

अक्सर पूछे जाने वाले प्रश्न

Unix एपॉक क्या है?

Unix एपॉक 1 जनवरी 1970 00:00:00 UTC है। यह सभी Unix टाइमस्टैम्प गणनाओं के लिए संदर्भ बिंदु के रूप में कार्य करता है। टाइमस्टैम्प उस क्षण से बीते सेकंडों की संख्या दर्शाता है।

क्या Unix टाइमस्टैम्प समाप्त हो जाएगा?

32-बिट हस्ताक्षरित पूर्णांक Unix Timestamp 19 जनवरी 2038 को ओवरफ़्लो हो जाएगा, जिसे Year 2038 Problem के रूप में जाना जाता है। 64-बिट पूर्णांक का उपयोग करने वाले सिस्टम लगभग 292 अरब वर्षों तक इस समस्या का सामना नहीं करेंगे। अधिकांश आधुनिक सिस्टम 64-बिट टाइमस्टैम्प में संक्रमण कर चुके हैं।

क्या Unix टाइमस्टैम्प समय क्षेत्र से प्रभावित होता है?

नहीं, Unix टाइमस्टैम्प हमेशा UTC का उपयोग करता है और समय क्षेत्र से प्रभावित नहीं होता। वही टाइमस्टैम्प विश्व स्तर पर समान क्षण का प्रतिनिधित्व करता है। समय क्षेत्र रूपांतरण केवल तब होता है जब टाइमस्टैम्प को पठनीय दिनांक के रूप में प्रदर्शित किया जाता है।

टाइमस्टैम्प में सेकंड और मिलीसेकंड में क्या अंतर है?

मानक Unix टाइमस्टैम्प एपॉक के बाद से सेकंड में समय मापते हैं, जबकि JavaScript और कुछ API मिलीसेकंड का उपयोग करते हैं। मिलीसेकंड टाइमस्टैम्प सेकंड टाइमस्टैम्प का 1000 गुना है। उदाहरण के लिए, 1700000000 सेकंड = 1700000000000 मिलीसेकंड।

क्या लीप सेकंड Unix टाइमस्टैम्प को प्रभावित करते हैं?

तकनीकी रूप से, Unix टाइमस्टैम्प लीप सेकंड को अनदेखा करता है। प्रत्येक दिन को ठीक 86400 सेकंड का माना जाता है। इसका मतलब है कि जब लीप सेकंड डाले जाते हैं, तो Unix समय UTC से थोड़ा विचलित हो सकता है, लेकिन व्यवहार में यह शायद ही कभी समस्या पैदा करता है।