DATECONV(1) دستورهای کاربری DATECONV(1)

dateconv - تبدیل DATE/TIME بین سامانه‌های تقویمی.

dateconv [OPTION]... [DATE/TIME]...

تبدیل DATE/TIME بین سامانه‌های تقویمی. در صورت حذف DATE/TIME، تاریخ/زمان‌ها از stdin خوانده می‌شوند.

مقدار DATE/TIME می‌تواند یکی از مقادیر ویژه زیر نیز باشد:
- `now' به‌عنوان برچسب زمانی کنونی (UTC) تفسیر می‌شود
- `time' بخش زمان از برچسب زمانی کنونی (UTC)
- `today' تاریخ امروز (بر اساس UTC)
- `tomo[rrow]' تاریخ فردا (بر اساس UTC)
- `y[ester]day' تاریخ دیروز (بر اساس UTC)

گزینه‌های شناخته‌شده:

نمایش راهنما و خروج
نمایش نسخه و خروج
جلوگیری از نمایش پیام‌های مربوط به خطاهای تجزیه‌کننده تاریخ/زمان و مدت‌زمان، و اصلاحات خودکار. حالت پیش‌فرض چاپ یک هشدار یا مقدار اصلاح‌شده و بازگرداندن کد خطای ۲ است.
قالب خروجی. این مقدار می‌تواند یک رشته مشخص‌کننده قالب (مشابه FMT در ()strftime) یا نام یک تقویم باشد.
قالب ورودی، می‌تواند چندین بار استفاده شود. هر تاریخ/زمان به ترتیبی که مشخص شده است به تجزیه‌کننده‌های قالب ورودی ارسال می‌شود؛ اگر یک تاریخ/زمان بتواند با یک رشته مشخص‌کننده قالب ورودی داده‌شده با موفقیت خوانده شود، همان مقدار استفاده خواهد شد.
برای ورودی‌های ناقص، از DT به‌عنوان مقدار جایگزین جهت پر کردن فیلدهای ناموجود استفاده می‌کند. همچنین برای مشخص‌کننده‌های قالب مبهم جهت تعیین بازه آن‌ها روی محور زمان مطلق به کار می‌رود. باید یک تاریخ/زمان در قالب ISO8601 باشد. در صورت عدم ذکر، پیش‌فرض تاریخ/زمان کنونی است.
فعال‌سازی تفسیر گریزهای ممیز وارونه (backslash escapes) در رشته‌های مشخص‌کننده قالب خروجی و ورودی.
رونوشت از بخش‌های ورودی پیش و پس از یک تاریخ/زمان منطبق‌شده. توجه داشته باشید که تمام موارد وقوع تاریخ/زمان در یک سطر پردازش خواهند شد.
خالی کردن سطرهایی که قابل تجزیه نیستند.
قالب‌بندی نتایج بر اساس LOCALE؛ این گزینه تنها بر نام ماه‌ها و روزهای هفته اثر می‌گذارد.
تفسیر تاریخ‌های موجود در stdin یا خط فرمان به‌صورت مربوط به لوکال LOCALE؛ این گزینه تنها نام ماه‌ها و روزهای هفته را تحت تأثیر قرار می‌دهد چرا که قالب‌های ورودی باید به‌صورت صریح مشخص شوند.
تفسیر تاریخ‌های موجود در stdin یا خط فرمان به‌صورت مربوط به منطقه زمانی ZONE.
تبدیل تاریخ‌های چاپ‌شده در stdout به منطقه زمانی ZONE، پیش‌فرض: UTC..SH "مشخصات قالب‌بندی (FORMAT SPECS)"

مشخصات قالب‌بندی در dateutils مشابه strftime() در استاندارد posix هستند.

با این حال، به دلیل پشتیبانی از طیف گسترده‌تری از گاه‌شماری‌ها، dateutils باید قواعد متفاوتی را به کار گیرد.

مشخصات تاریخ:

%a  نام اختصاری روز هفته
%A  نام کامل روز هفته
%_a نام روز هفته کوتاه‌شده به یک نویسه (MTWRFAS)
%b  نام اختصاری ماه
%B  نام کامل ماه
%_b نام ماه کوتاه‌شده به یک نویسه (FGHJKMNQUVXZ)
%c  شمار روز هفته در ماه (بازهٔ 00 تا 05)
%C  شمار روز هفته در سال (بازهٔ 00 تا 53)
%d  روزِ ماه، ۲ رقمی (بازهٔ 00 تا 31)
%D  روزِ سال، ۳ رقمی (بازهٔ 000 تا 366)
%F  معادل %Y-%m-%d (قالب استاندارد ymd)
%g  سال شماره‌هفتهٔ ISO بدون سده (بازهٔ 00 تا 99)
%G  سال شماره‌هفتهٔ ISO با احتساب سده
%j  معادل %D
%m  ماه در گاه‌شماری فعلی (بازهٔ 00 تا 12)
%Q  فصل/سه‌ماههٔ سال (بازهٔ Q1 تا Q4)
%q  شمارهٔ سه‌ماهه (بازهٔ 01 تا 04)
%s  تعداد ثانیه‌ها از مبدأ زمان (Epoch)
%u  روز هفته به صورت عدد (بازهٔ 01 تا 07، یکشنبه 07 است)
%U  شمار هفته، مبنای روز هفته یکشنبه است (بازهٔ 00 تا 53)
%V  شمار هفتهٔ ISO، مبنای روز هفته دوشنبه است (بازهٔ 01 تا 53)
%w  روز هفته به صورت عدد (بازهٔ 00 تا 06، یکشنبه 00 است)
%W  شمار هفته، مبنای روز هفته دوشنبه است (بازهٔ 00 تا 53)
%y  سال بدون سده (بازهٔ 00 تا 99)
%Y  سال با احتساب سده
%_y سال کوتاه‌شده به یک رقم
%Z  اختلاف منطقهٔ زمانی بر حسب ساعت و دقیقه (HH:MM) همراه با
    علامت پیشین (+ برای اختلاف‌های شرق UTC، - برای اختلاف‌های
    غرب UTC)
%Od روز به صورت اعداد رومی
%Om ماه به صورت اعداد رومی
%Oy سال دو رقمی به صورت اعداد رومی
%OY سال با احتساب سده به صورت اعداد رومی
%rs در سامانه‌های زمانی که Epoch آن‌ها متفاوت از Epoch یونیکس است، این
    گزینه تعداد ثانیه‌ها از آن مبدأ را انتخاب می‌کند.
%rY در گاه‌شماری‌هایی با سال‌هایی که با سال‌های میلادی مطابقت ندارند،
    این گزینه سالِ گاه‌شماری را انتخاب می‌کند.
%dth  روز ماه به صورت یک عدد ترتیبی، 1st، 2nd، 3rd و غیره
%mth  ماه سال به صورت یک عدد ترتیبی، 1st، 2nd، 3rd و غیره
%db روز کاری ماه (از آخرین روز کاری ماه قبل)
%dB تعداد روزهای کاری تا آخرین روز کاری این ماه

مشخصات زمان:

%H  ساعت در قالب ۲۴ ساعته، ۲ رقمی (بازهٔ 00 تا 23)
%I  ساعت در قالب ۱۲ ساعته، ۲ رقمی (بازهٔ 01 تا 12)
%M  دقیقه (بازهٔ 00 تا 59)
%N  نانوثانیه‌ها (بازهٔ 000000000 تا 999999999)
%p  رشتهٔ AM یا PM؛ ظهر PM و نیمه‌شب AM است
%P  مشابه %p اما با حروف کوچک
%S  ثانیه (بازهٔ 00 تا 60، مقدار 60 برای ثانیه‌های کبیسه است)
%T  معادل %H:%M:%S

مشخصات عمومی:

%n  نویسهٔ خط جدید
%t  نویسهٔ تب
%%  نویسهٔ دقیق %

تعدیل‌کننده‌ها:

%O  تعدیل‌کننده برای تبدیل اعداد ده‌دهی به اعداد رومی
%r  تعدیل‌کننده برای تبدیل واحدها به واحدهای واقعی
%0  تعدیل‌کننده برای فعال‌سازی پیشوند صفر
%SPC  تعدیل‌کننده برای فعال‌سازی پیشوند فاصله
%-  تعدیل‌کننده برای غیرفعال کردن کامل پیشوندها
th  پسوند، خواندن و چاپ اعداد ترتیبی
b   پسوند، در نظر گرفتن روزها به عنوان روزهای کاری

طبق طراحی، تاریخ‌های پیش از 1601-01-01 پشتیبانی نمی‌شوند.

جهت انطباق، فهرستی از شناسه‌های گاه‌شماری و رشتهٔ قالب متناظر با آن‌ها در اینجا آمده است:

ymd     %Y-%m-%d
ymcw    %Y-%m-%c-%w
ywd     %rY-W%V-%u
bizda   %Y-%m-%db
lilian     n/a
ldn        n/a
julian     n/a
jdn        n/a
matlab     n/a
mdn        n/a

این شناسه‌ها می‌توانند به عنوان رشتهٔ قالب خروجی استفاده شوند، علاوه بر این، @code{lilian}/@code{ldn} و @code{julian}/@code{jdn} نیز می‌توانند به عنوان رشتهٔ قالب ورودی به کار روند..SH "مثال‌ها (EXAMPLES)"

$ dateconv 2012-03-01
2012-03-01
$
$ dateconv -i "%d/%b/%y" 01/Mar/12
2012-03-01
$
$ dateconv -f "%d/%b/%y" 2012-03-01
01/Mar/12
$
$ dateconv -f "%d/%b/%y" -i "%OY %Om %Od" "MCMXCVIII IX XVII"
17/Sep/98
$
$ dateconv 12:03:01
12:03:01
$
$ dateconv -i "%I:%M:%S %p" "11:22:33 PM"
23:22:33
$
$ dateconv '2012-03-01 00:00:00'
2012-03-01T00:00:00
$
$ dateconv 2012-03-01T12:34:56
2012-03-01T12:34:56
$
$ dateconv --zone America/Chicago <<EOF
2012-03-01T07:05:06
2012-03-01T08:12:34
2012-03-11T01:05:06
2012-03-11T02:05:06
2012-03-11T07:05:06
2012-03-11T08:05:06
2012-03-11T17:05:06
EOF
2012-03-01T01:05:06
2012-03-01T02:12:34
2012-03-10T19:05:06
2012-03-10T20:05:06
2012-03-11T01:05:06
2012-03-11T03:05:06
2012-03-11T12:05:06
$
$ dateconv --from-zone America/Chicago <<EOF
2012-03-01T01:05:06
2012-03-01T02:12:34
2012-03-10T19:05:06
2012-03-10T20:05:06
2012-03-11T01:05:06
2012-03-11T03:05:06
2012-03-11T12:05:06
EOF
2012-03-01T07:05:06
2012-03-01T08:12:34
2012-03-11T01:05:06
2012-03-11T02:05:06
2012-03-11T07:05:06
2012-03-11T08:05:06
2012-03-11T17:05:06
$
$ dateconv --from-zone America/Chicago -z Europe/Berlin '2012-03-01 12:00' -i '%F %H:%M' -f '%F %T'
2012-03-01 19:00:00
$
نوشته‌شده توسط Sebastian Freundt <freundt@fresse.org>

گزارش باگ‌ها به: https://github.com/hroptatyr/dateutils/issues

مستندات کامل برای dateconv به صورت یک راهنمای Texinfo نگهداری می‌شود. اگر برنامه‌های info و dateconv به‌درستی روی سیستم شما نصب شده باشند، دستور

info (dateutils)dateconv

باید دسترسی به راهنمای کامل را برای شما فراهم کند.

مه 2024 dateutils 0.4.11