Đây là đối chiếu lệnh có thể được chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS
CHƯƠNG TRÌNH:
TÊN
chuyển đổi - chuyển đổi ngày tháng sang các định dạng khác nhau
SYNOPSIS
xoay vòng [LỰA CHỌN] [NGÀY]
MÔ TẢ
xoay vòng Là một phần của ân sủng gói phần mềm, một ứng dụng cho dữ liệu hai chiều
hình dung. xoay vòng chuyển đổi ngày từ và sang các định dạng khác nhau. Ngày sau
các định dạng được hỗ trợ (giờ, phút và giây luôn là tùy chọn):
iso 1999-12-31T23:59:59.999
người châu Âu
31/12/1999 23:59:59.999 or 31/12/99 23:59:59.999
us 12/31/1999 23:59:59.999 or 12/31/99 23:59:59.999
ngày 123456.789
giây
123456.789
Các định dạng được thử theo thứ tự sau: sự lựa chọn của người dùng, iso, european và chúng tôi (ở đó
không có sự mơ hồ giữa các định dạng lịch và định dạng số và do đó không có thứ tự
chỉ định cho họ).
SỬ DỤNG
xoay vòng đọc ngày tháng trên dòng lệnh hoặc trong đầu vào chuẩn nếu lệnh
dòng không có ngày.
Sự lựa chọn của người dùng cho định dạng đầu vào đặt một định dạng trước các định dạng khác trong bản dùng thử
danh sách, điều này chủ yếu hữu ích cho công dân Hoa Kỳ, những người chắc chắn muốn có định dạng Hoa Kỳ
kiểm tra trước khi định dạng châu Âu. Lựa chọn của người dùng mặc định (nohint) không có tác dụng gì nên
các định dạng sau của danh sách được chọn.
Dấu phân cách giữa các trường khác nhau có thể là bất kỳ ký tự nào trong tập hợp: ": /.- T". Một hoặc
nhiều dấu cách hơn hoạt động như một dấu phân cách, các ký tự khác không thể được lặp lại, dấu phân tách T là
chỉ được phép giữa ngày và giờ, chủ yếu đối với iso8601. Vì vậy, chuỗi "1999-12 31: 23-59"
được phép (nhưng không được khuyến khích). Ký tự '-' vừa được sử dụng làm dấu phân cách (nó là
thường được sử dụng ở định dạng iso8601) và là dấu trừ một bậc (cho các ngày trong quá khứ hoặc
cho ngày tháng). Khi năm nằm trong khoảng từ 0 đến 99 và được viết bằng hai hoặc ít hơn
chữ số, nó được ánh xạ tới kỷ nguyên bắt đầu từ năm kết thúc và kết thúc vào năm kết thúc + 99 dưới dạng
sau:
[wy; 99] -> [quấn_năm; 100 * (1 + bọc_năm / 100) - 1]
[00; wy-1] -> [100 * (1 + wrap_year / 100); wrap_year + 99]
vì vậy, ví dụ: nếu năm kết thúc được đặt thành 1950 (là giá trị mặc định), thì
ánh xạ là:
phạm vi [00; 49] được ánh xạ tới [2000; 2049]
phạm vi [50; 99] được ánh xạ tới [1950; 1999]
điều này hợp lý tuân thủ Y2K và phù hợp với việc sử dụng hiện tại. Chỉ định năm 1 là
vẫn có thể sử dụng nhiều hơn hai chữ số như sau: "0001-03-04" rõ ràng là tháng XNUMX
thứ 4, năm 1, ngay cả khi lựa chọn của người dùng là định dạng của chúng tôi. Tuy nhiên chỉ sử dụng hai chữ số là
không được khuyến nghị (chúng tôi giới thiệu lỗi năm 2050 ở đây, vì vậy tính năng này sẽ bị xóa ở một số
điểm trong tương lai ;-)
Ngày dạng số (định dạng ngày và giây) có thể được chỉ định bằng cách sử dụng số nguyên, thực hoặc
định dạng hàm mũ (các dấu phụ 'd' và 'D' từ fortran được hỗ trợ trong
thêm vào 'e' và 'E'). Chúng được tính theo ngày tham chiếu có thể tùy chỉnh.
Giá trị mặc định được cung cấp bởi hằng số REFDATE trong tệp nguồn. Bạn có thể thay đổi
giá trị này như bạn muốn trước khi biên dịch và bạn có thể thay đổi nó theo ý muốn bằng cách sử dụng -r
tùy chọn dòng lệnh. Giá trị mặc định trong tệp phân phối là "-4713-01-01T12: 00: 00",
nó là một tham chiếu cổ điển cho các sự kiện thiên văn (lưu ý rằng dấu '-' được sử dụng ở đây cả hai
dưới dạng một trừ một bậc và như một dấu phân cách).
Chương trình có thể được sử dụng cho lịch của Denys và lịch Gregorian. Nó không mất vào
số giây nhảy vọt của tài khoản: bạn có thể nghĩ rằng nó chỉ hoạt động theo Giờ nguyên tử quốc tế (TAI) và
không theo Giờ Thống nhất Phối hợp (UTC) ... Các ngày không tồn tại được phát hiện, chúng bao gồm
năm 0, các ngày từ 1582-10-05 đến 1582-10-14, ngày 29 tháng XNUMX của các năm, tháng không nhuận
dưới 1 hoặc trên 12, ...
LỰA CHỌN
Bản tóm tắt về các tùy chọn được hỗ trợ bởi xoay vòng được bao gồm bên dưới.
-h in thông báo trợ giúp trên stderr và thoát thành công
-i định dạng
đặt lựa chọn của người dùng cho định dạng đầu vào, các định dạng được hỗ trợ là iso, Europe, us, days,
giây và nohint. Ở phần đầu, định dạng đầu vào là nohint, có nghĩa là
chương trình cố gắng tự đoán định dạng, nếu lựa chọn của người dùng không cho phép
phân tích cú pháp ngày, các định dạng khác được thử
-o định dạng
định dạng đầu ra lực lượng, các định dạng được hỗ trợ là iso, european, us, days, seconds và
nohint. Ở phần đầu, định dạng đầu ra là nohint, có nghĩa là chương trình
sử dụng định dạng ngày cho các ngày được đọc ở bất kỳ định dạng lịch nào và sử dụng iso8601 cho các ngày
đọc ở định dạng số
-r ngày
đặt ngày tham chiếu (ngày được đọc bằng cách sử dụng định dạng đầu vào hiện tại) tại
bắt đầu tham chiếu được đặt theo hằng số REFDATE trong mã,
là -4713-01-01T12: 00: 00 trong tệp được phân phối.
-w năm
đặt năm kết thúc thành năm
Sử dụng chuyển đổi trực tuyến bằng cách sử dụng các dịch vụ onworks.net