ذهبت الأيام التي كانت فيها الأوامر الغامضة والصيغ الصارمة. لماذا تضيع المزيد من الوقت في فك رموز الصفحات الرئيسية بدلاً من كتابة النصوص البرمجية أو التنقل في نظامك؟ احتضن قوة وبساطة خلية السمك، التي تُعتبر تذكرتك إلى تجربة Linux أكثر سلاسة وتوجيهاً.
تعلم كيفية تحويل رحلتك في Linux باستخدام خلية السمك، بدءًا من واجهتها السهلة الاستخدام وصولاً إلى خيارات التخصيص الشاملة التي تقدمها.
قل مرحبًا بتسهيل سير العمل وبالثقة الجديدة في مهاراتك في Linux!
المتطلبات المسبقة
قبل أن تبدأ، خصص لحظة للتأكد من أنك قد قمت بتغطية الأمور الأساسية التالية لمتابعة هذا البرنامج التعليمي:
- تم تثبيت خلية السمك على جهازك – يستخدم هذا البرنامج التعليمي خلية السمك بالإصدار 3.7.0، أحدث إصدار حتى كتابة هذا النص.
- A Linux system – This tutorial uses an Ubuntu 22.04 LTS for demonstrations, but other distributions will work.
استكشاف التحقق من الأوامر وإكمال الأوامر تلقائيًا والاقتراحات
عندما يكون خلية السمك مثبتة، اغمر نفسك فيها لتنفيذ الأوامر بسلاسة. تقدم خلية السمك ردود فعل في الوقت الحقيقي واقتراحات متعلقة بالسياق للأوامر وأسماء الملفات والمعاملات.
ولكن أولاً، ستحتاج إلى الوصول إلى خلية السمك قبل الانغماس في التحقق من الأوامر وإكمالها تلقائيًا والاقتراحات.
للاستكشاف هذه الميزة التي تتيح لك تحديد الأخطاء وتصحيحها قبل تنفيذها حتى، قم باتباع الخطوات التالية:
1. افتح الطرفية وقم بتشغيل الأمر fish
أدناه للوصول إلى واجهة سطر الأوامر fish.

2. بعد ذلك، اكتب الحرف الأول من الأمر ls
لمحاولة عرض جميع الملفات في الدليل الحالي.
كما هو موضح أدناه، يتحول الحرف “l” إلى اللون الأحمر لأن واجهة سطر الأوامر fish لا تعترف به كأمر صالح. تشير هذه الإشارة البصرية الفورية إلى وجود خطأ في الأمر.
ولكن لا داعي للقلق! بفضل الاقتراح التلقائي، يظهر الحرف “s” مخفضًا، ملمحًا إلى الأمر الصحيح.

3. الآن، اضغط على السهم الأيمن أو مفاتيح Ctrl+F لقبول الأمر المقترح تلقائيًا ls
.
لاحظ أن الحرف “l” قد تغير من اللون الأحمر إلى اللون الأزرق لأن واجهة سطر الأوامر fish الآن تعترف بأمرك كـ ls
.

تحديد الأوامر البديلة في ملف تكوين fish
بالإضافة إلى التغذية الفورية والاقتراحات ذات السياق، يقدم fish طريقة قوية ومرنة لتخصيص بيئة سطر الأوامر الخاصة بك – ملف تكوين fish. على عكس القواقع الأخرى التي قد تستخدم ملفات تكوين متعددة، يستخدم fish بشكل أساسي ملفًا واحدًا يسمى config.fish الموجود في الدليل ~/.config/fish/.
لرؤية كيفية تأثير التكوينات على واجهة سطر الأوامر fish، ابدأ بتحديد أوامر بديلة كالتالي:
1. افتح ملف تكوين fish باستخدام محرر النصوص أو الشيفرة الخاص بك، مثل nano
أو vim
، ولكن هذا البرنامج التعليمي يستخدم الأول.
بمجرد فتحها، سترى محتوى الملف التكويني الأولي لخلية الأسماك، الذي قد يحتوي على تكوينات افتراضية أو يكون فارغًا نسبيًا. يعتمد هذا الحال الأولي على ما إذا كنت قد قمت بإضافة تكوينات مسبقًا أنت أو عملية إعداد النظام الخاص بك.
قد يتضمن الملف تعليقات فقط أو كتل شرطية أساسية للتثبيتات الجديدة، مثل الواحدة أدناه.

2. داخل كتلة if
، أضف الوظيفة التالية function
، احفظ التغييرات، وأغلق المحرر.
في هذه النقطة، أنت تقوم بإنشاء إعدادات مخصصة في ملف تكوين خلية الأسماك، وهذه الوظيفة تعرف اختصارًا (c
) لأمر clear
.
? ملحوظة: كل وظيفة محددة لها ملف .fish مقابل في الدليل ~/.config/fish/functions/ (على سبيل المثال، c.fish).

clear
command3. قم بتنفيذ الأمر التالي لتنفيذ الملف التكويني (config.fish
).
هذا الأمر لا يعرض أي إخراج إلى الطرفية ولكنه يطبق تغييرات التكوين على جلستك الحالية.
? يتم تنفيذ ملف تكوين السمك هذا تلقائيًا في كل مرة يتم فيها بدء جلسة سمك جديدة وهو المكان المثالي لتحديد تخصيصات الشل.
4. بعد ذلك، اكتب c
في السطر الفوري للتحقق من التغييرات الخاصة بك.
لاحظ كيف يتحول الحرف ‘c‘ إلى اللون الأزرق لأن شل السمك يعترف به كأمر clear
. تشير هذه السلوكية إلى تغيير ناجح في تكوين السمك.
انظر كيف يتحول الحرف ‘c‘ إلى اللون الأزرق؟ هذا التغيير يعود لشل السمك الذي يعرف أن الحرف ‘c‘ هو أمر clear
. تشير هذه السلوكية إلى تحديث ناجح في تكوين السمك الخاص بك.
الآن، لماذا لا تقوم بإعداد بعض الإختصارات الإضافية لتلك الأوامر الموثوق بها التي تعود إليها في كل مرة تتقدم فيها الحالة؟

clear
command worksتخصيص سلة الأسماك الفورية
بالإضافة إلى إعداد الإختصارات لعمليات أكثر سلاسة، يمنحك سلة الأسماك القدرة على تخصيص سلة الأسماك الفورية الخاصة بك، مثل إضافة لمسة شخصية للقذفة الخاصة بك. بدلاً من مسارات الدليل الطويلة، استمتع بقذفة نظيفة ومنظمة أكثر.
لتخصيص سلة الأسماك الفورية، قم بتنفيذ الإجراءات التالية:
1. افتح ملف تكوين سلة الأسماك (~/.config/fish/config.fish)، وأضف الوظيفة التالية.
تخصيص سلة الأسماك الفورية لعرض (echo
) علامة دولار ($
) تليها مسافة.

٢. احفظ التغييرات في ملف تكوين السمكة واخرج من المحرر.
٣. الآن، المصدر
الملف التكويني لتطبيق التغييرات الخاصة بك.
بمجرد تصديره، سترى تغييرات الموجه كما هو موضح في اللقطة الشاشية التالية.

الاحتفاظ بالتغييرات عبر الجلسات
لقد رأيت كيفية إنشاء التخصيصات في قذيفة السمك. ولكن شيئًا واحدًا يجب ملاحظته: هذه الإعدادات متاحة فقط في الجلسة الحالية.
ماذا يحدث بمجرد إغلاق الجلسة الحالية وفتح جلسة جديدة؟ زوف! تخصيصاتك المحفوظة بعناية تختفي جميعًا — محبط، أليس كذلك؟ ولكن لا تخاف، حيث أن هناك أملًا لا زال. دع أمر funcsave
ينقذ تخصيصاتك من النسيان!
للحفاظ على تخصيصاتك عبر الجلسات، قم باتباع الخطوات التالية:
١. افتح ملف تكوين السمكة، وأضف الأمر funcsave
إلى كل function
جنبًا إلى جنب مع اسم الوظيفة، مثل هذا:

funcsave
command to persist functions across sessions٢. احفظ التغييرات الخاصة بك، وأغلق المحرر والطرفية.
٣. افتح جلسة طرفية جديدة، وقم بتشغيل الأمر fish
أدناه للوصول إلى قذيفة السمك
إذا كانت الأوامر funcsave
التي أضفتها تعمل على الاحتفاظ بتكويناتك، سترى رسائل مثل تلك أدناه.

ضبط واستمرار المتغيرات البيئية
على الرغم من أن وظائف الاحتفاظ مفيدة، إلا أن إدارة القيم التي يمكن الوصول إليها بشكل عام تأخذ كتابة الأوامر في الشل إلى مستوى جديد – ضبط متغيرات البيئة. على عكس القواقع التقليدية التي تعتمد على export
، يستخدم السمك set
مع خيارات للتحكم في نطاق المتغير وسلوك التصدير.
لكن هناك مشكلة، تعلم؟ أها، لقد تخمنتها بشكل صحيح! المتغير الذي يتم ضبطه عبر أمر set
في الطرفية يمكن الوصول إليه فقط في الجلسة الحالية.
لضبط واستمرار متغيرات البيئة، سيكون العلم -gx
مفيدًا على النحو التالي:
1. أضف الأمر التالي لـ set
متغير MY_VARIABLE
في ملف تكوين السمك على أنه عالمي. إليك كيفية عمل العلم -gx
:
-g
– يجعل المتغير عالميًا، قابل للوصول من أي نطاق داخل بيئة المستخدم نفسها.-x
– يصدر المتغير، مما يجعله متاحًا لأي أوامر خارجية أو برامج تم تشغيلها من السمك.

2. حفظ تغييرات التكوين، ثم أغلق المحرر والطرفية.
3. افتح جلسة طرفية جديدة، واستخدم السمك، وقم بتشغيل الأمر التالي لتأكيد التغييرات.
الناتج أدناه يؤكد أن التغييرات قد أثرت على الجلسات.

4. بمجرد التأكيد، أضف الأمر التالي set
إلى ملف تكوين السمكة، احفظ التغييرات، وأغلق المحرر.
هذا الأمر يجعل المتغير MY_UNIVERSAL_VARIABLE
عالميًا عبر جميع الجلسات، حتى بعد إعادة التشغيل.
انظر كيف يعمل العلم -Ux
أدناه:
-U
– يجعل المتغيرMY_UNIVERSAL_VARIABLE
عالميًا، مضمونًا مشاركته عبر جميع جلسات الطرفية الحالية والمستقبلية، بما في ذلك تلك التابعة لمستخدمين مختلفين.-x
– يتم تصدير المتغير إلى العمليات الفرعية، مما يجعله متاحًا لأي أوامر أو نصوص تم استدعاؤها من الجلسة الحالية.

5. افتح جلسة طرفية جديدة، واستخدم خط الأوامر الخاص بالسمكة، وقم بتشغيل الأمر echo
أدناه للتحقق من التغييرات.
إذا تم كل شيء بنجاح، سيكون لديك الناتج التالي، مما يشير إلى أن التغييرات قد أثرت عبر الجلسات.

? بالإضافة إلى ملف تكوين السمكة، استفد من
fish_config
في الطرفية للتخصيصات السريعة والتلقائية. يطلق هذا الأمر واجهة ويب في متصفحك، مما يتيح لك ضبط الإشارات البصرية بسرعة، وتعديل إعدادات، وإدارة الوظائف والمتغيرات بطريقة ودية للمستخدم.
إدارة إضافات السمكة باستخدام مدير الحزم Fisher.
الصدفة شديدة المؤثر بمفردها، أليس كذلك؟ ولكن تخيل معي، عندما تبدأ في دمج الإضافات، تصبح أكثر قوة. هذه الإضافات توسّع إمكانيات صدفة، مما يجلب أوامرًا جديدة وأدوات وتكاملات لتعزيز تجربتك في سطر الأوامر بشكل كبير.
مثال جيد هو Fisher، مدير الحزم الذي صمم خصيصًا لصدفة. هذه الإضافة مُصممة بأداء عالٍ وبساطة في الاعتبار، وهي خفيفة الوزن.
? Fisher خفيف الوزن في إدارة إضافات صدفة ولا يُقارن مباشرة بمديرات الحزم على مستوى النظام. هذا التمييز واضح فيما يتعلق بحجم وتعقيد الحزم التي يديرها.
لإدارة إضافات صدفة، يجب عليك أولاً تثبيت Fisher باستخدام الخطوات الموضحة:
افتح الطرفية الخاصة بك، وقم بالوصول إلى صدفة، وقم بتنفيذ الأمر التالي لتنزيل وتثبيت Fisher. يقوم هذا الأمر بجلب نص التثبيت لـ Fisher وينقله إلى source
، الذي ينفذ النص داخل جلسة صدفة الحالية عبر curl
.
بمجرد التثبيت، سترى الناتج التالي.

الآن، قم بتشغيل الأمر fisher
أدناه لتأكيد التثبيت عن طريق عرض --version
المثبت حاليًا لـ Fisher على نظامك.

تثبيت إضافة GitNow
الآن بعد أن بدأت بتشغيل فيشر، ماذا بعد؟ ماذا عن تعزيز قذيفتك السمكية ببعض الإضافات الرائعة؟ GitNow، على سبيل المثال، هو مجموعة أدوات تعزز سير عمل Git الخاص بك داخل قذيفة السمكة بشكل مذهل — جذاب.
GitNow يقدم أوامرًا مبسطة لمهام Git الروتينية، مما يعزز الإنتاجية ويبسط روتين الأوامر Git الخاص بك.
لتثبيت GitNow باستخدام مدير الحزم Fisher، اتبع هذه الخطوات:
1. في قذيفة السمك الخاصة بك، قم بتنفيذ الأمر fisher
التالي لـ تثبيت
إضافة GitNow (joseluisq/gitnow
).
يخبر هذا الأمر Fisher بجلب ودمج GitNow في تكوين فيشر الخاص بك، مما يجعل مجموعة الاختصارات Git الخاصة به متاحة فورًا.

2. بمجرد التثبيت، قم بتشغيل الأمر gitnow
أدناه للتأكد من تثبيت GitNow بشكل صحيح.
يعرض هذا الأمر الإصدار الحالي المثبت من GitNow، ولكن فقط إذا كانت أوامر GitNow معترف بها في قذيفتك.

3. في النهاية، قم بتشغيل هذا الأمر fisher
لـ قائمة
جميع الإضافات التي يديرها Fisher، بما في ذلك GitNow.
أدناه، يمكنك رؤية إضافة GitNow وإضافة Fisher نفسها.

إزالة إضافات قذيفة السمك
هل قذيفة السمك الخاصة بك تغرق في الإضافات؟ مثلما تتركك تبحث عن ما تحتاج إليه؟ نظف بيئة قذيفة السمك الخاصة بك عن طريق إزالة الإضافات غير الضرورية.
لإزالة إضافة تم إدارتها بواسطة Fisher في شل fish الخاص بك، قم باتباع هذه الخطوات:
١. قم بتنفيذ الأمر التالي لعرض جميع الإضافات المثبتة حاليًا.
اختر واحدة من القائمة التي ترغب في إزالتها.

٢. بعد ذلك، قم بتشغيل الأمر fisher remove
أدناه، تتبعه باسم الإضافة (joseluisq/gitnow
) لإزالتها.
يقوم هذا الأمر بإخبار Fisher بإلغاء تثبيت إضافة GitNow من بيئة شل fish الخاصة بك.

٣. الآن، قم بتشغيل نفس الأمر fisher list
للتأكد من إزالة إضافة GitNow بنجاح.
يجب ألا تظهر إضافة GitNow في قائمة الإضافات المثبتة بعد الآن.

إزالة مدير الحزم Fisher بشكل شامل
كما رأيت، مدير الحزم Fisher مفيد حقًا. ولكن إلغاء تثبيته يمكن أن يكون خيارك الأفضل إذا وجدت نفسك غير راضٍ أو تواجه مشاكل مع Fisher.
لإلغاء تثبيت Fisher بشكل شامل من شل fish الخاص بك، قم باتباع الخطوات التالية:
قم بتنفيذ الأمر التالي لعرض وإزالة fisher
وجميع الإضافات المثبتة عبر Fisher.

بديلًا عن ذلك، قم بتنفيذ الأمر التالي لإزالة fisher
فقط بذاته.

استكشاف مدير الحزم Oh My Fish
عندما تكون بالفعل مع Fisher، لماذا تفكر في Oh My Fish؟ لقد جربت قوة مكونات إضافية لخط الأوامر في fish باستخدام Fisher. ولكن ها هو المفاجئ: يفتح هذا الإطار مجالًا جديدًا للتخصيص لخط الأوامر fish، حيث يقدم مجموعة واسعة من السمات والمكونات الإضافية.
لمعرفة ما يمكن أن يقدمه Oh My Fish لك، قم أولاً بتثبيت هذا المدير الحزم بالأمر التالي:
قم بتشغيل الأمر curl
التالي لتنزيل وتشغيل سكربت تثبيت Oh My Fish (https://get.oh-my.fish
) داخل خط الأوامر fish
.
إذا نجحت العملية، ستحصل على نتيجة مشابهة للتالية.

بمجرد التثبيت، قم بتنفيذ الأمر omf
التالي للتحقق من الإصدار المثبت لـ Oh My Fish.
A successful response, as shown below, indicates that Oh My Fish is ready and waiting to transform your fish shell experience.

تخصيص البيئة باستخدام سمات Oh My Fish
هل أنت متعب من نفس مظهر خط الأوامر fish؟ لماذا لا تضيف لمسة شخصية؟ قم بتغيير بيئة خط الأوامر fish الخاصة بك باستخدام سمات جديدة ومخصصة من Oh My Fish.
لتخصيص بيئة خط الأوامر fish الخاصة بك، يجب عليك تثبيت السمات باستخدام الخطوات التالية:
1. قم بفتح ملف تكوين fish، واحذف الدالة fish_prompt
التي تعرف كيفية عرض الرسالة التحفيزية. بهذا تضمن أن الرسالة التحفيزية المخصصة التي قمت بتعيينها لا تتعارض مع أو تعوض السمات المقدمة من Oh My Fish.
? القوالب تأتي مع استفسارات فريدة مهمة لمظهرها ووظيفتها. تعطيل استفسارك المخصص (
fish_prompt
) يضمن تكامل تصميم وميزات السمة التي اخترتها لـ Oh My Fish مع خط الأوامر الخاص بك (fish shell
).
2. بعد ذلك، احذف (rm
) ملف ~/.config/fish/functions/fish_prompt.fish
. هذا الأمر لا يعطي أي نتيجة، ولكن حذف هذا الملف يضمن أن خط الأوامر الخاص بالسمكة يعود إلى الاستفسار الافتراضي الخاص بها.
3. قم بتشغيل هذا الأمر source
لجعل التغييرات في ملف تكوين السمكة تأخذ مفعولها.

4. الآن، قم بتنفيذ الأمر التالي omf
لاكتشاف السمة المثالية لخط الأوامر الخاص بسمكتك.
اختر سمة ترغب في دمجها في خط الأوامر الخاص بسمكتك (مثل cbjohnson).
? قم بزيارة مستودع GitHub الرسمي لـ سمات Oh My Shell لمعرفة كيفية ظهور كل سمة قبل تثبيتها.

? قم بتعزيز خط الأوامر الخاص بسمكة بالإضافات عن طريق تشغيل الأمر التالي لتثبيت الإضافات. قم بزيارة مستودع OMF على GitHub للحصول على قائمة بالإضافات لتثبيتها.
omf install <plugin_name>
5. بعد ذلك، قم بتشغيل الأمر أدناه لـ تثبيت
السمة التي اخترتها في الخطوة الرابعة (cbjohnson
).
بمجرد التثبيت، يتغير استفسارك على الفور، كما في المثال التالي.

? نصيحة: قم بالتبديل بين السمات بسرعة عندما يكون لديك اثنين أو أكثر من خلال تشغيل الأمر التالي.
omf theme <اسم_السمة>
إلغاء تثبيت Oh My Fish
Oh My Fish هو جوهرة لتحسين جو القشرة الخاصة بك. ولكن إذا كنت ترغب في تغيير المناظر الطبيعية أو تجربة شيء جديد، فإن إلغاء تثبيت Oh My Fish يعطي قشرة السمكة الخاصة بك بداية جديدة.
لإلغاء تثبيت Oh My Fish، قم باتخاذ الخطوات التالية:
1. قم بتنفيذ الأوامر التالية rm
لحذف جميع الملفات ذات الصلة بـ Oh My Fish.
بمجرد الانتهاء، سترى أن السمة التي تم تثبيتها أولاً قد اختفت.

2. بعد ذلك، قم بتنفيذ كل أمر أدناه لحذف المزيد من الملفات ذات الصلة بـ Oh My Fish.
هذه الأوامر ليست لها أي إخراج، ولكن حذف هذه الملفات يضمن إزالة جميع بقايا Oh My Fish من النظام الخاص بك.
3. الآن، قم بتشغيل الأمر التالي omf
للتحقق من الحذف.
سترى خطأ مثل الآتي، يشير إلى أن الأمر omf
لم يُعثر عليه وأن Oh My Fish قد تمت إزالته بالكامل.

تعيين السمكة كقشرة افتراضية
إذا كنت قد استمتعت بتجربة قشرة السمكة في تحسين تجربتك مع Linux، لماذا لا تقوم بتعيينها كقشرة افتراضية؟ بهذه الطريقة، توفر لنفسك عناء التبديل كلما فتحت نافذة الأوامر.
لتعيين السمكة كقشرة افتراضية، قم باتباع الخطوات التالية:
1. قم بتنفيذ الأمر أدناه للعثور على المسار الذي يتواجد فيه محرر الأوامر fish
.
انسخ المسار إلى الحافظة، حيث ستحتاج إليه في الخطوات التالية.

2. في الخطوة التالية، قم بتشغيل الأمر التالي لإضافة الشيل fish إلى قائمة الشيلات المقبولة في /etc/shells
.

3. في النهاية، قم بتشغيل الأمر chsh
أدناه لتغيير الشيل الافتراضي إلى fish (/usr/bin/fish
).
عند إعادة تشغيل الجهاز، سيكون لديك fish كشيل افتراضي.

? نصيحة: قم بالتبديل من fish إلى شيل آخر مثل Bash كشيل افتراضي عن طريق تكرار جميع الخطوات في هذا القسم. تأكد من تحديد المسار إلى Bash في الخطوتين الثانية والثالثة، ثم أعد تشغيل الجهاز لتطبيق التغييرات.
الاستنتاج
طوال هذا البرنامج التعليمي، لقد استكشفت جوهر شيل fish بعمق، كشفت عن ميزاته القوية وخياراته القابلة للتخصيص. من تعريف الاختصارات إلى تخصيص الدعوات وحفظ متغيرات البيئة إلى إدارة المكونات الإضافية، شيل fish كان جليسك الموثوق به.
لقد اكتسبت رؤى حول تحويل تجربتك في Linux باستخدام مدير حزم Oh My Fish. علاوة على ذلك، لقد تعلمت كيفية اكتشاف وتثبيت المكونات الإضافية والسمات الجديدة بسهولة، مما يوسع وظيفة وجمالية بيئة شيل fish الخاصة بك.
الآن بعد استكشاف أساسيات واجهة سطر الأوامر Fish، اغمر أعماقها وافتح إمكانياتها الكاملة. لماذا لا تجرب التجارب مع الترويسات المخصصة مثل Powerline أو Starship لإضفاء لمسة شخصية على واجهة سطر الأوامر الخاصة بك؟