شجرة عيد الميلاد على سطر الأوامر

في وقت قريب من العام الجديد ، لا أريد التفكير في العمل الجاد.

الجميع يحاول تزيين شيء ما لقضاء العطلة: المنزل ، المكتب ، مكان العمل ... دعونا ، ونحن سوف تزيين شيء! على سبيل المثال ، موجه الأوامر. إلى حد ما ، سطر الأوامر هو أيضا مكان العمل.

في بعض التوزيعات ، هو بالفعل "زينت":



في حالات أخرى ، يكون اللون الرمادي وغير واضح:



ويمكننا القيام به ، على سبيل المثال ، مثل هذا:



بالطبع ، طعم ولون جميع علامات مختلفة. إذا بدا هذا التلوين غير مرغوب فيه وغير مناسب لك ، فاعلم أن وجهة النظر هذه لها كل الحق في الحياة. وإذا كنت ترغب أيضًا في إضافة القليل من مزاج العام الجديد ، فاقرأ على مقال صغير في السنة الجديدة من Cloud4Y.

أولاً ، سأشرح كيف يكون ناتج المحطة "ملونًا". ويتم ذلك باستخدام تسلسل الهروب. وبشكل أكثر دقة - تسلسلات رمز التحكم في محطة ANSI / VT100. مما يعني تلقائيًا أن المحاكي الطرفي يجب أن يدعم هذا المعيار ، وإلا فلن تحدث معجزة السنة الجديدة. ونعم ، من المفترض أن لديك bash $ SHELL.

تسمى هذه الأوامر تسلسلات الهروب لسبب أنه في بداية كل منها هو حرف الهروب ASCII. هناك العديد من تسلسل التحكم ، وهي تتيح ، على سبيل المثال ، عرض إعدادات المحطة الطرفية ، والتحكم في عرض وحركة المؤشر ، وتغيير الخط ، وحذف النص وإخفائه. سنختار واحدة من مجموعة كاملة من الاحتمالات - تغيير لون النص والخلفية.

ننفذ تسلسل الكود *ESC*[{attr1};...;{attrn}m
كحرف Escape ، يتم استخدام شكله الثماني ، مثل \ 033 . بالنسبة للسمات ، إليك قائمة قصيرة من القيم المحتملة:

0 إعادة تعيين جميع السمات.
1 مشرق
2 خافت
4 الشرطة السفلية (الشرطة السفلية)
5 وميض
7 عكس
8 مخفي (إخفاء النص)

ألوان المقدمة (لون القلم ، يتم عرض النص بهذا اللون):
30 أسود
31 أحمر
32 الأخضر
33 أصفر
34 الأزرق
35 أرجواني (أرجواني)
36 سماوي (أزرق)
37 أبيض

ألوان الخلفية (لون الورق ، أو لون الخلفية):
40 أسود
41 أحمر
42 الأخضر
43 أصفر
44 الأزرق
45 أرجواني (أرجواني)
46 سماوي (أزرق)
47 أبيض

يرجى ملاحظة أنه إذا كنت تقود الآن إلى الجهاز: echo \033[0;31m \033[0m'

... ثم ستحصل على abracadabra أحادي اللون كإخراج:



لماذا؟ لأنه كان من الضروري استخدام الميزات المتقدمة لأمر الارتداد. يكفي إضافة مفتاح واحد: echo -e '\033[0;31m \033[0m'

الآن سوف يبدو الإخراج الصحيح:



مع تلوين الإخراج إلى محطة فرزها. الآن دعونا نرى كيفية تلوين موجه الأوامر.

يتم ذلك عن طريق تغيير المتغير PS1. المتغير مسؤول عن موجه سطر الأوامر. يمكن أيضًا تغيير مظهره ، بما في ذلك استخدام تسلسل الهروب. ولكن هناك اختلاف بسيط: يجب أن تبدأ التسلسل بالحرف " \ [ " ، وتنتهي بالحرف " \] " ، وإلا فسيتم عرضه على الجهاز الطرفي.

يتم وصف جميع متواليات الأوامر الممكنة بالتفصيل في دليل bash ، لذلك أقترح على القراء اختيار ما يريدون مراقبته في موجه الأوامر لأنفسهم. على سبيل المثال ، سأقدم القيمة للمتغير PS1:

\[\033[34;1m\]\t\[\033[0m\],\[\033[32m\]\u@\l@\h\[\033[0m\]:\[\033[33m\]\W\[\033[0m\],\[\033
[31m\]\!\[\033[0m\]\$\n

سوف أفهم هذا التعويذة الرهيبة:

\ [\ 033 [34؛ 1m \] - قم بتشغيل لون خط أزرق ساطع (السمة الثانية)
\ t - عرض الوقت الحالي بالتنسيق HH: MM: SS
\ [\ 033 [0m \] - إعادة ضبط إعدادات لون الخط
، - مجرد فاصلة (بشكل غير متوقع ، أليس كذلك؟)
\ [\ 033 [32m \] - قم بتشغيل اللون الأخضر للخط
\ u @ \ l @ \ h - عرض اسم المستخدم ورقم الجهاز الطرفي واسم المضيف القصير ، مفصولة بالرمز "@"
[\ 033 [0m \] - أعد ضبط إعدادات لون الخط مرة أخرى
: - مجرد القولون (فجأة!)
\ [\ 033 [33m \] - قم بتشغيل اللون الأصفر للخط
\ W - طباعة اسم الدليل الحالي
[\ 033 [0m \] - أعد ضبط إعدادات لون الخط مرة أخرى
- فاصلة أخرى (من كان يظن!)
\ [\ 033 [31m \] - قم بتشغيل اللون الأحمر للخط
\! - طباعة رقم الأمر في المحطة
[\ 033 [0m \] - لا تنس إعادة ضبط إعدادات لون الخط
\ $ - اطبع "#" للجذر و "$" للجميع
\ n - تغذية الخط. لماذا؟ بحيث يبدأ الأمر من الحافة اليسرى للإطار ، وليس من موضع نهاية موجه الأوامر.

حيث لتجاوز متغير؟ الطريقة الأكثر منطقية للقيام بذلك هي في ~ / .bashrc.

يقتصر ظهور الدعوة فقط من خيالك. من حيث المبدأ ، لا شيء يمنعك من استخدام الأدوات المذكورة أعلاه لجعل سطر الأوامر موجهًا في شكل شجرة عيد الميلاد. صحيح أن هذه الدعوة ستكون مرهقة للغاية ، وبالتأكيد لن يكون العمل أكثر ملاءمة. يمكن ببساطة عرض شجرة عيد الميلاد أعلى سطر الأوامر عند تسجيل الدخول (ما زلنا بحاجة إلى تعديل ~ / .bashrc). الذهاب لذلك! وشكرا للمشاهدة.



ما هو مفيد آخر للقراءة في مدونة Cloud4Y

تكوين القمة في جنو / لينكس
العاهرات في طليعة الأمن السيبراني
الشركات الناشئة التي يمكن أن مفاجأة
هل تحتاج الوسائد في مركز البيانات؟
المنزل الذي بناه الروبوت

اشترك في قناة Telegram الخاصة بنا حتى لا يفوتك مقال آخر! نكتب أكثر من مرتين في الأسبوع وفقط في الأعمال. نذكرك أيضًا بأن Cloud4Y ، المزود السحابي للشركات ، أطلق حملة الترويج "FZ-152 Cloud بسعر الترويج العادي". يمكنك التقديم حتى 31 ديسمبر .

Source: https://habr.com/ru/post/ar480788/


All Articles