ত্রুটির বার্তা "তারিখ: অবৈধ তারিখ '2016-10-16'"


35

আজ আমার ঘড়িটি গ্রীষ্মের সময়গুলিতে স্বয়ংক্রিয়ভাবে সামঞ্জস্য হয়েছিল এবং কোনও ক্রন্টাবের একটি স্ক্রিপ্ট ব্যর্থ হতে শুরু করে। কী ঘটছে সেদিকে আমার নজর ছিল এবং এর সাথে নিম্নলিখিত ত্রুটিটি প্রদর্শিত হচ্ছে LC_ALL=C:

তারিখ: অবৈধ তারিখ '2016-10-16'

আমি যদিও কেবল সিস্টেমটি পুনরায় বুট করা ভাল তবে এখন আমি পুনরায় বুট করেছি এবং ত্রুটিটি এখনও উপস্থিত রয়েছে:

$ date -d '2016-10-15'
Sat Oct 15 00:00:00 BRT 2016
$ date -d '2016-10-16'
date: data inválida “2016-10-16”
$ date -d '2016-10-17'
Mon Oct 17 00:00:00 BRST 2016

কি এই সৃষ্টি হতে পারে?


আপনি কোন ওএস থেকে এই আদেশটি চালাচ্ছেন? দেবিয়ান ৮ এ পুনরুত্পাদন করা যাবে না two দুটি ভিন্ন localeএস এর সাথে চেষ্টা করা : sv_SE.utf8এবং en_us.utf-8।
— মোলিংলাভস

2
দিনের কোন সময় (রাত্রি) ব্রাজিল ঘড়িগুলি গ্রীষ্মের সময়ে ফরোয়ার্ড করে?
— টেকাফ

আমি যদিও সমস্ত দেশ যেখানে দেরি সময়ে স্থানান্তরিত হয়, যেমন 2 সকাল, যেমন এটির কারণ হওয়ার সম্ভাবনা কম।
— njzk2

উত্তর:


57

সমস্যাটি হ'ল দিবালোকের সময় সাশ্রয় করার সময় পরিবর্তন করা এবং আপনার সময় অঞ্চলটিতে ১ October অক্টোবর ২০১ 2016 এ ১ ঘন্টা এগিয়ে দেওয়া হয়েছে:

$ zdump -v America/Sao_Paulo | awk '/Oct 16/ && /2016/'
America/Sao_Paulo  Sun Oct 16 02:59:59 2016 UTC = Sat Oct 15 23:59:59 2016 BRT isdst=0
America/Sao_Paulo  Sun Oct 16 03:00:00 2016 UTC = Sun Oct 16 01:00:00 2016 BRST isdst=1

সুতরাং মধ্যে যে কোনো সময় 00:00করতে 00:59সেদিন (কিন্তু হয়তো অন্যদের মধ্যে বৈধ) আপনার সময় অঞ্চল অবৈধ হিসেবে গণ্য করা হয়:

$ TZ=America/Sao_Paulo gdate -d '2016-10-16 0:59'
gdate: invalid date ‘2016-10-16 0:59’

$ TZ=Asia/Ho_Chi_Minh gdate -d '2016-10-16 0:59'
Sun Oct 16 00:59:00 ICT 2016

আপনি অতিরিক্ত সময় নির্ধারণ করতে পারেন, যা এই ব্যাপ্তিতে নেই:

$ TZ=America/Sao_Paulo gdate -d '2016-10-16 1:00'
Sun Oct 16 01:00:00 BRST 2016

উপরেরটি জিএনইউ তারিখের আচরণ।

বিএসডি ডেটে এই সমস্যা নেই। যদি ইনপুট তারিখটি টাইমজোনটিতে অবৈধ হয় তবে এটি বৈধ সময় পর্যন্ত না পৌঁছানো অবধি 1 ঘন্টা এগিয়ে চুপচাপ সামঞ্জস্য করা হবে:

$ TZ=America/Sao_Paulo date -j -f '%Y%m%d%H%M' 201610160000
Sun Oct 16 01:00:53 BRST 2016

1 ঘন্টা এবং 53 সেকেন্ড ?!
— ডোমেন

সুতরাং এটি ভবিষ্যতের সাথে অনেক দূরে সময়কে 53 সেকেন্ডে সামঞ্জস্য করেছে? নাকি আমি কিছু ভুল বুঝেছি?
— ডোমেন

1
আঃ, বোঝায়; অ-নির্দিষ্ট ডেটা (ক্লিয়ারিংয়ের বিপরীতে) সংরক্ষণ করে। 00:59:07 দ্বারা সামনের দিকে সামঞ্জস্য করা কিছুটা আশ্চর্যজনক হলেও এই ক্ষেত্রে যথেষ্ট হবে।
— ডোমেন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.