CAL(1) أوامر المستخدم CAL(1)

الاسم

cal - يعرض تقويماً

موجز

cal [خيارات] [[[اليوم] الشهر] السنة]

cal [خيارات] [طابع_زمني|اسم_الشهر]

الوصف

يعرض cal تقويماً بسيطاً. إذا لم تُحدد أي معطيات، فسيُعرض الشهر الحالي.

يمكن تحديد الشهر كرقم (1-12)، أو كاسم شهر، أو كاسم شهر مختصر وفقاً للمحليات الحالية.

يُستخدم نظاما تقويم مختلفان، الغريغوري واليولياني. هذان النظامان متطابقان تقريباً مع إجراء التقويم الغريغوري تعديلاً طفيفاً على تكرار السنوات الكبيسة؛ مما يسهل تحسين المزامنة مع الأحداث الشمسية مثل الاعتدالات. أُدخل إصلاح التقويم الغريغوري في عام 1582، لكن اعتماده استمر حتى عام 1923. مبدئياً، يستخدم cal تاريخ الاعتماد 3 سبتمبر 1752. ومن ذلك التاريخ فصاعداً يُعرض التقويم الغريغوري؛ بينما تستخدم التواريخ السابقة نظام التقويم اليولياني. حُذف 11 يوماً وقت الاعتماد لجعل التقويم متزامناً مع الأحداث الشمسية. لذا فإن سبتمبر 1752 يحتوي على خليط من التواريخ اليوليانية والغريغورية حيث يتبع يوم 2 يوم 14 (الأيام من 3 إلى 13 غائبة).

اختيارياً، يمكن استخدام إما التقويم الغريغوري الاستباقي أو التقويم اليولياني حصرياً. راجع --reform أدناه.

الخيارات

-1، --one

يعرض مخرجات شهر واحد. (هذا هو الوضع المبدئي).

-3، --three

يعرض ثلاثة أشهر تشمل التاريخ المحدد.

-n , --months عدد

يعرض عددًا من الأشهر، بدءًا من الشهر الذي يحتوي على التاريخ.

-S, --span

يعرض الأشهر التي تشمل التاريخ.

-s، --sunday

يعرض يوم الأحد كأول يوم في الأسبوع.

-m، --monday

اعرض يوم الاثنين كأول أيام الأسبوع.

-v، --vertical

اعرض باستخدام تخطيط رأسي (يُعرف بوضع ncal(1)).

--iso

اعرض التقويم الغريغوري الاستباقي حصرياً. لا يؤثر هذا الخيار على أرقام الأسابيع واليوم الأول من الأسبوع. انظر --reform أدناه.

-j، --julian

استخدم ترقيم يوم-من-السنة لجميع التقاويم. تُسمى هذه أيضاً الأيام الترتيبية. تتراوح الأيام الترتيبية من 1 إلى 366. لا يغير هذا الخيار نظام التقويم من الغريغوري إلى اليولياني، حيث يُتحكم في ذلك عبر خيار --reform.

يُشار أحياناً إلى التقاويم الغريغورية التي تستخدم التواريخ الترتيبية على أنها تقاويم يوليانية. قد يكون هذا مربكاً بسبب كثرة الاصطلاحات المتعلقة بالتاريخ والتي تستخدم اسم يولياني في مسمياتها: التاريخ اليولياني (الترتيبي)، تاريخ التقويم اليولياني، التاريخ اليولياني (الفلكي)، التاريخ اليولياني (المعدل)، وغيرها. سُمي هذا الخيار "julian" لأن الأيام الترتيبية تُعرف بأنها يوليانية في معيار POSIX. ومع ذلك، كن على علم بأن cal يستخدم أيضاً نظام التقويم اليولياني. انظر الوصف أعلاه.

--reform val

يضبط هذا الخيار تاريخ اعتماد إصلاح التقويم الغريغوري. تستخدم تواريخ التقويم السابقة للإصلاح نظام التقويم اليولياني. بينما تستخدم تواريخ التقويم اللاحقة للإصلاح نظام التقويم الغريغوري. يمكن أن تكون القيمة val:
1752 - يضبط 3 سبتمبر 1752 كتاريخ للإصلاح (مبدئي). وهو الوقت الذي وُحد فيه إصلاح التقويم الغريغوري من قبل الإمبراطورية البريطانية.
gregorian - اعرض التقاويم الغريغورية حصرياً. يضبط هذا العنصر النائب تاريخ الإصلاح قبل أصغر سنة يمكن لـ cal استخدامها؛ مما يعني أن جميع مخرجات التقويم تستخدم نظام التقويم الغريغوري. يُسمى هذا بالتقويم الغريغوري الاستباقي، لأن التواريخ السابقة لإنشاء نظام التقويم تستخدم قيماً مُستقرأة.
iso - اسم مستعار لـ gregorian. يتطلب معيار ISO 8601 لتمثيل التواريخ والأوقات في تبادل المعلومات استخدام التقويم الغريغوري الاستباقي.
julian - اعرض التقاويم اليوليانية حصرياً. يضبط هذا العنصر النائب الخاص تاريخ الإصلاح بعد أكبر سنة يمكن لـ cal استخدامها؛ مما يعني أن جميع مخرجات التقويم تستخدم نظام التقويم اليولياني.

انظر الوصف أعلاه.

-y، --year

اعرض تقويماً للسنة كاملة.

-Y، --twelve

اعرض تقويماً للاثني عشر شهراً القادمة.

-w، --week[=رقم]

يعرض أرقام الأسابيع في التقويم وفقاً لتنسيق الولايات المتحدة أو ISO-8601. إذا حُدد رقم number، سيُطبع الأسبوع المطلوب في السنة المرغوبة أو الحالية ويُبرز رقمه. قد يُتجاهل الرقم number إذا حُدد الشهر month أيضاً.

إذا حُدد الرقم number ولكن اليوم الحالي لم يُحدد في سطر الأوامر، فلن يُبرز اليوم الحالي.

انظر قسم ملاحظات لمزيد من التفاصيل.

--color[=متى]

لون المخرجات. المعامل الاختياري متى يمكن أن يكون auto أو never أو always. إذا حُذف معامل متى، فإنه يعود إلى auto آليًا. يمكن تعطيل الألوان؛ للاطلاع على الوضع المبدئي المدمج الحالي راجع مخرجات --help. انظر أيضًا قسم الألوان.

-c, --columns=أعمدة

عدد الأعمدة المراد استخدامها. يستخدم auto أكبر عدد يناسب الطرفية.

-h، --help

اعرض نص المساعدة ثم اخرج.

-V، --version

اعرض الإصدار واخرج.

المعاملات

معلمة وحيدة بالأرقام فقط (مثال: 'cal 2020')

تحدد الـ سنة المراد عرضها؛ لاحظ أنه يجب تحديد السنة بالكامل: cal 89 لن يعرض تقويماً لعام 1989.

معلمة سلسلة نصية وحيدة (مثال: 'cal tomorrow' أو 'cal August')

تحدد الـ طابع-زمني أو اسم الشهر (أو الاسم المختصر) وفقاً للمحليات الحالية.

تُقبل العناصر النائبة الخاصة عند تحليل الطابع الزمني، يمكن استخدام "now" للإشارة إلى الوقت الحالي، و "today" و "yesterday" و "tomorrow" للإشارة إلى اليوم الحالي، أو اليوم السابق أو اليوم التالي، على التوالي.

تُقبل أيضاً مواصفات التاريخ النسبية، وفي هذه الحالة تُقوّم "+" إلى الوقت الحالي مضافاً إليه الفاصل الزمني المحدد. وبالمثل، يُقوّم الفاصل الزمني المسبوق بـ "-" إلى الوقت الحالي مطروحاً منه الفاصل الزمني المحدد، على سبيل المثال '+2days'. وبدلاً من سبق الفاصل الزمني بـ "+" أو "-"، يمكن أيضاً إلحاقه بمسافة وكلمة "left" أو "ago" (على سبيل المثال '1 week ago').

معلمتان (مثال: 'cal 11 2020')

يدلان على الـ شهر (من 1 إلى 12) والـ سنة.

ثلاث معلمات (مثال: 'cal 25 11 2020')

تدل على الـ يوم (من 1 إلى 31) والـ month and year، وسيُبرز اليوم إذا عُرض التقويم على طرفية. إذا لم تُحدد أي معلمات، يُعرض تقويم الشهر الحالي.

ملاحظات

تبدأ السنة في 1 يناير. يُحدد اليوم الأول من الأسبوع بواسطة المحلية أو خياري --sunday و --monday.

يعتمد ترقيم الأسابيع على اختيار اليوم الأول من الأسبوع. إذا كان الأحد، فيُستخدم الترقيم المعتاد في أمريكا الشمالية، حيث يقع 1 يناير في الأسبوع رقم 1. إذا كان الاثنين (-m) فيُستخدم ترقيم الأسابيع القياسي ISO 8601، حيث يقع أول يوم خميس في الأسبوع رقم 1.

الألوان

نُفذ تلوين المخرجات بواسطة وظيفة terminal-colors.d(5). يمكن تعطيل التلوين الضمني بملف فارغ

/etc/terminal-colors.d/cal.disable

للأمر cal أو لجميع الأدوات بواسطة

/etc/terminal-colors.d/disable

منذ الإصدار 2.41، دُعم متغير البيئة $NO_COLOR أيضاً لتعطيل تلوين المخرجات ما لم يُمكن صراحةً بخيار من سطر الأوامر.

يتخطى $XDG_CONFIG_HOME/terminal-colors.d أو $HOME/.config/terminal-colors.d الخاص بالمستخدم الإعداد العام.

لاحظ أن تلوين المخرجات قد يُمكن مبدئياً، وفي هذه الحالة ليس من الضروري وجود أدلة terminal-colors.d بعد.

أسماء الألوان المنطقية التي يدعمها cal هي:

اليوم

اليوم الحالي.

رقم الأسبوع

رقم الأسبوع المطلوب بواسطة خيار سطر الأوامر --week=<الرقم>.

أسابيع

رقم الأسبوع.

header

ترويسة الشهر.

workday

الأيام التي تقع ضمن أسبوع العمل.

نهاية الأسبوع

الأيام التي تقع خارج أسبوع العمل.

على سبيل المثال:

echo -e 'weekend 35\ntoday 1;41\nheader yellow' > $HOME/.config/terminal-colors.d/cal.scheme

تاريخ

ظهر الأمر cal في الإصدار السادس من AT&T UNIX.

العلل

يستخدم مخرَج cal المبدئي تاريخ 3 سبتمبر 1752 كتاريخ لإصلاح التقويم الميلادي. أما تواريخ الإصلاح التاريخية للمحليات الأخرى، بما في ذلك تقديمه في أكتوبر 1582، فهي غير مُنفذة.

التقاويم البديلة، مثل أم القرى، أو الهجري الشمسي، أو الجعزي، أو الهندوسي القمري الشمسي، غير متاحة.

انظر أيضاً

terminal-colors.d(5)

التبليغ عن الأخطاء

لتقارير العِلل، استخدم مُتتبع المشكلات https://github.com/util-linux/util-linux/issues.

التوفر

الأمر cal جزء من حزمة util-linux التي يمكن تنزيلها من أرشيف نواة لينكس https://www.kernel.org/pub/linux/utils/util-linux/.

2026-05-18 util-linux 2.42.1