Câu hỏi hay.
Các tài liệu nói rằng nó nên được cho phép.
info date 'Date input formats' 'Calendar date items'
Đối với các tháng số, định dạng ISO 8601 `NĂM-THÁNG-NGÀY 'được cho phép, trong đó NĂM là bất kỳ số dương nào, ...
Số 0 đứng đầu phải có mặt nếu một số nhỏ hơn mười.
Nếu NĂM là 68 hoặc nhỏ hơn, thì 2000 được thêm vào nó; mặt khác, nếu NĂM nhỏ hơn 100, thì 1900 được thêm vào nó.
Bạn có đang sử dụng hệ thống 32 bit không?
Bạn có gặp lỗi với ngày sau 2038-01-20 không, vd
date -d '2038-01-20'
Nếu vậy, có vẻ như ngày GNU đang sử dụng giá trị thời gian 32 bit.
Tôi không chắc chắn làm thế nào bạn có thể sửa lỗi này ngoài việc sử dụng hệ thống 64 bit hoặc sử dụng một công cụ khác, ví dụ DateTime trong Perl hoặc datetime trong Python.
Một số nền tảng:
Thời gian Unix đếm số giây từ ngày 1 tháng 1 năm 1970 bằng cách sử dụng một giá trị số nguyên. Nếu hệ thống sử dụng số nguyên 32 bit, nó chỉ có thể đếm được 2,1 tỷ giây chuyển tiếp (tối đa 2038-01-19 03:14:02 UTC) và 2,1 tỷ giây ngược (trở lại 1901-12-13 20:45:51 UTC).
Biết thêm thông tin tại: