अच्छा प्रश्न।
प्रलेखन यह अनुमति दी जानी चाहिए कहते हैं।
info date 'Date input formats' 'Calendar date items'
संख्यात्मक महीनों के लिए, ISO 8601 प्रारूप `YEAR-MONTH-DAY’ की अनुमति है, जहाँ YEAR किसी भी संख्या में है, ...
यदि एक संख्या दस से कम है, तो एक अग्रणी शून्य मौजूद होना चाहिए।
यदि YEAR 68 या इससे छोटा है, तो इसमें 2000 जोड़ा जाता है; अन्यथा, यदि YEAR 100 से कम है, तो इसमें 1900 जोड़ा जाता है।
क्या आप 32-बिट सिस्टम पर हैं?
क्या आपको 2038-01-20 के बाद की तारीखों के साथ एक त्रुटि मिलती है, जैसे
date -d '2038-01-20'
यदि ऐसा है, तो ऐसा लगता है कि GNU दिनांक 32-बिट समय मान का उपयोग कर रही है।
मुझे यकीन है कि कैसे आप एक 64-बिट प्रणाली का उपयोग कर या एक अलग उपकरण का उपयोग कर, उदाहरण के लिए की तुलना में इस अन्य ठीक कर सकते हैं नहीं कर रहा हूँ दिनांक समय पर्ल में या datetime अजगर में।
कुछ पृष्ठभूमि:
यूनिक्स बार 1 जनवरी 1970 से पूर्णांक मान का उपयोग करके सेकंड की संख्या की गणना करता है। यदि सिस्टम 32-बिट पूर्णांक का उपयोग करता है, तो यह केवल 2.1 बिलियन सेकंड आगे (2038-01-19 03:14:02 UTC तक) और 2.1 बिलियन सेकंड पीछे (1901-12-13 20:45:52 पर पीछे) की गणना कर सकता है यु.टी. सी)।
अधिक जानकारी पर: