| zdump(8) | System Manager's Manual | zdump(8) |
نام (NAME)
zdump - نمایشدهنده اطلاعات منطقه زمانی (timezone dumper)
خلاصه دستور (SYNOPSIS)
zdump [ option ... ] [ timezone ... ]
توضیحات (DESCRIPTION)
برنامه zdump زمان فعلی را در هر timezone (منطقه زمانی) مشخصشده در خط فرمان چاپ میکند. یک timezone بهصورت - مانند /dev/stdin در نظر گرفته میشود؛ این ویژگی میتواند برای ارسال دادههای TZif از طریق لوله (pipe) به zdump بهکار رود.
گزینهها (OPTIONS)
- --version
- نمایش اطلاعات نسخه و خروج.
- --help
- نمایش پیام کوتاه نحوه استفاده و خروج.
- -i
- خروجی دادن توصیفی از بازههای زمانی. برای هر timezone در خط فرمان، توصیفی از منطقه زمانی در قالب بازهای خروجی میدهد. بخش “قالب بازه زمانی (INTERVAL FORMAT)” در زیر را ببینید.
- -v
- خروجی دادن توصیفی با جزئیات کامل از بازههای زمانی. برای هر timezone در خط فرمان، زمانها را در دو مقدار انتهایی (کرانهای) زمان، زمانها (در صورت وجود) در مرزها و درست پس از مرزهای سالهایی که localtime(3) و gmtime(3) میتوانند نمایش دهند، و زمانها را هم یک ثانیه قبل و هم دقیقاً در زمان هر ناپیوستگی زمانی شناساییشده چاپ میکند. در انتهای هر خط عبارت isdst=D میآید که در آن D بسته به اینکه زمان دادهشده بهترتیب زمان تابستانی (daylight saving time)، زمان استاندارد (standard time)، یا نوع زمانی ناشناخته باشد، مقداری مثبت، صفر، یا منفی است. همچنین در انتهای هر خط عبارت gmtoff=N میآید اگر زمان محلی دادهشده مشخص باشد که N ثانیه در شرق گرینویچ قرار دارد.
- -V
- مشابه -v، با این تفاوت که خروجیهای مربوط به مقادیر انتهایی زمان و سالها را حذف میکند. این امر خروجیای تولید میکند که مقایسه آن با پیادهسازیهایی با قالبهای نمایش زمان متفاوت سادهتر است.
- -c [loyear,]hiyear
- محدود کردن خروجی بازهها در سال (یا سالهای) دادهشده. زمانهای قطع (محدودسازی) با استفاده از گاهشماری میلادی پیشنگر (proleptic Gregorian calendar) با سال 0 و با زمان جهانی (UT) بدون در نظر گرفتن ثانیههای کبیسه محاسبه میشوند. نقاط قطع در آغاز هر سال قرار دارند، بهطوری که برچسب زمانی کران پایین شامل میشود (inclusive) و کران بالا حذف میشود (exclusive)؛ برای نمونه، -c 1970,2070 تغییرات رخداده در تاریخ 1970-01-01 00:00:00 UTC یا پس از آن و قبل از 2070-01-01 00:00:00 UTC را انتخاب میکند. محدوده برش پیشفرض -500,2500 است.
- -t [lotime,]hitime
- محدود کردن خروجی بازهها در زمان (یا زمانهای) دادهشده، که بهصورت ثانیههای دهدهی از مبدأ 1970-01-01 00:00:00 در زمان هماهنگ جهانی (UTC) مشخص میشوند. شناسه timezone تعیین میکند که آیا شمارش شامل ثانیههای کبیسه میشود یا خیر. همانند -c، کران پایین برش شامل میشود و کران بالای آن حذف میشود.
قالب بازه زمانی (INTERVAL FORMAT)
قالب بازه زمانی یک نمایش متنی فشرده است که هدف آن خوانا بودن برای انسان و ماشین است. این قالب شامل یک خط خالی، سپس یک خط “TZ=string” است که در آن string یک رشته درون گیومه است که منطقه زمانی را نشان میدهد، یک خط دوم بهصورت “- - interval” که بازه زمانی پیش از نخستین تغییر (در صورت وجود) را توصیف میکند، و صفر یا چند خط در ادامه بهصورت “date time interval” که برای هر زمان تغییر و بازه پس از آن یک خط وجود دارد. فیلدها با یک نویسه تب (tab) از هم جدا میشوند.
تاریخها در قالب yyyy-mm-dd و زمانها در قالب ۲۴ ساعته hh:mm:ss هستند که در آن hh<24 است. زمانها به وقت محلی بلافاصله پس از تغییر هستند. توصیف بازه زمانی شامل یک آفست UT در قالب علامتدار ±hhmmss ، یک نام اختصاری منطقه زمانی، و یک فلگ isdst است. نام اختصاریای که با آفست UT برابر باشد حذف میشود؛ سایر نامهای اختصاری درون گیومه قرار میگیرند مگر اینکه از یک یا چند کاراکتر الفبایی تشکیل شده باشند. فلگ isdst برای زمان استاندارد حذف میشود، و در غیر این صورت یک عدد صحیح دهدهی است که برای زمان تابستانی بدون علامت و مثبت (معمولاً 1) و برای مقادیر ناشناخته منفی است.
در زمانها و آفستهای UT با مقدار مطلق کمتر از ۱۰۰ ساعت، اگر ثانیهها صفر باشند حذف میشوند، و اگر دقیقهها نیز صفر باشند آنها نیز حذف میشوند. آفستهای مثبت UT در شرق گرینویچ هستند. آفست -00 نشاندهنده یک جانگهدار (placeholder) برای UT در مناطقی است که آفست واقعی نامشخص است؛ بر اساس توافق، این حالت زمانی رخ میدهد که آفست UT صفر باشد و اختصار منطقه زمانی با “-” شروع شود یا “zzz” باشد.
در رشتههای درون گیومه، توالیهای گریز (escape sequences) کاراکترهای غیرمعمول را نمایش میدهند. این توالیها عبارتند از: \s برای فاصله (space)، و \"، \\، \f، \n، \r، \t و \v با معانی معمول آنها در زبان برنامهنویسی C. برای نمونه، رشته داخل گیومه “"CET\s\"\\"” توالی کاراکتری “CET "\” را نشان میدهد.
در اینجا نمونهای از خروجی آورده شده است که خط خالی آغازین حذف شده است. (این مثال با فواصل تب تنظیم شده بهگونهای نمایش داده شده است که ستونهای جداشده با تب در یک راستا تراز شوند.)
TZ="Pacific/Honolulu" - - -103126 LMT 1896-01-13 12:01:26 -1030 HST 1933-04-30 03 -0930 HDT 1 1933-05-21 11 -1030 HST 1942-02-09 03 -0930 HWT 1 1945-08-14 13:30 -0930 HPT 1 1945-09-30 01 -1030 HST 1947-06-08 02:30 -10 HSTدر اینجا، زمان محلی ۱۰ ساعت و ۳۱ دقیقه و ۲۶ ثانیه در غرب UT آغاز میشود، و زمان استانداردی با اختصار LMT است. بلافاصله پس از نخستین تغییر، تاریخ 1896-01-13 و ساعت 12:01:26 است، و بازه زمانی پس از آن ۱۰٫۵ ساعت در غرب UT و یک زمان استاندارد با اختصار HST است. بلافاصله پس از دومین تغییر، تاریخ 1933-04-30 و ساعت 03:00:00 است و بازه زمانی بعدی ۹٫۵ ساعت در غرب UT، با اختصار HDT، و زمان تابستانی است. بلافاصله پس از آخرین تغییر، تاریخ 1947-06-08 و ساعت 02:30:00 است و بازه زمانی بعدی ۱۰ ساعت در غرب UT، یک زمان استاندارد با اختصار HST است.
در اینجا بخشهایی از یک مثال دیگر آورده شده است:
TZ="Europe/Astrakhan" - - +031212 LMT 1924-04-30 23:47:48 +03 1930-06-21 01 +04 1981-04-01 01 +05 1 1981-09-30 23 +04 ... 2014-10-26 01 +03 2016-03-27 03 +04این منطقه زمانی در شرق UT قرار دارد، بنابراین آفستهای UT آن مثبت هستند. همچنین بسیاری از اختصارات منطقه زمانی آن حذف شدهاند زیرا متن آفست UT را تکرار میکنند.
محدودیتها (LIMITATIONS)
ناپیوستگیهای زمانی با نمونهبرداری از نتایج بازگرداندهشده توسط localtime(3) در بازههای دوازدهساعته یافت میشوند. این روش در تمامی موارد دنیای واقعی کار میکند؛ با این حال میتوان مناطق زمانی ساختگی ایجاد کرد که این روش در آنها ناموفق باشد.
در خروجی گزینههای -v و -V، عبارت “UT” بیانگر مقدار بازگرداندهشده توسط gmtime(3) است که برای برچسبهای زمانی مدرن از UTC و برای برچسبهای زمانی پیش از معرفی UTC از نوع دیگری از UT استفاده میکند. در حال حاضر هیچ تلاشی برای استفاده از “UTC” در خروجی برای برچسبهای جدیدتر و “UT” برای برچسبهای قدیمیتر صورت نگرفته است، تا حدی به این دلیل که تاریخ دقیق معرفی UTC چالشبرانگیز و بحثبرانگیز است.
همچنین ببینید (SEE ALSO)
| Time Zone Database |