الرئيسيةدروسدروس الانترنتكيفية تخصيص Bash Shell باستخدام shopt
دروس الانترنت

كيفية تخصيص Bash Shell باستخدام shopt

إذا قمت بضبط سلوك Bash shell باستخدامه shopt، فيمكنك التحكم في أكثر من 50 إعدادًا. سنوضح لك كيفية تصميم نظام Linux الخاص بك بالطريقة التي تريدها.

المتجر المدمج

يعد shoptالمضمن جزءًا من جميع إصدارات  Bash shell ، لذلك لا داعي لتثبيت أي شيء. زاد عدد الخيارات المتاحة  shoptبشكل مطرد على مر السنين. لذلك ، كلما كان إصدار Bash لديك أقدم ، كلما كانت قائمة shoptالخيارات أقصر .

إذا بدا أن هناك شيئًا لا يعمل على جهازك ، فتحقق من manإدخال الصفحة لـ Bash وتحقق من توفر هذا الخيار في إصدارك من shopt.

نحن نغطي جميع  shoptالخيارات أدناه. وصفنا أيضًا كيفية استخدامه ونشارك بعض الأمثلة. من هناك ، يمكنك التحقق من صفحة Bash man أو دليل GNU Bash المرجعي  لمعرفة ما إذا كان أي من هذه الخيارات يبدو مفيدًا أو جذابًا.

shoptيتم تمكين بعض الخيارات افتراضيًا وتشكل جزءًا من سلوك Bash الافتراضي. يمكنك تمكين shoptخيار كتغيير قصير المدى إلى Bash. سيعود بعد ذلك إلى السلوك الافتراضي عند إغلاق الصدفة.

ومع ذلك ، إذا كنت تريد إتاحة سلوك معدل كلما قمت بتشغيل Bash shell ، فيمكنك إجراء التغييرات بشكل دائم.

خيارات shopt

يوجد 53 shoptخيارًا. إذا كنت تستخدم shoptالأمر بدون أي خيارات ، فإنه يسردها. إذا قمنا بتوجيه الإخراج من خلال wcالأمر ، فسيحسب لنا الأسطر والكلمات والأحرف . نظرًا لأن كل shoptخيار في السطر الخاص به ، فإن عدد الأسطر هو عدد الخيارات.

نكتب ما يلي:

shopt | wc

لرؤية جميع الخيارات ، يمكننا تمرير الإخراج عبر columnالأمر لعرض أسماء الخيارات في أعمدة ، أو يمكننا توجيهها إلى less.

نكتب ما يلي:

shopt | column

العثور على shopt في دليل Linux

القسم الذي يناقش shoptوخياراته موجود في قسم Bash في دليل Linux. يبلغ طول قسم Bash أكثر من 6000 سطر. يمكنك العثور على وصف shoptمع الكثير من التمرير ، أو يمكنك فقط البحث عنه في الدليل.

اقرأ أيضاً :  كيفية الحد من النطاق الترددي للتحميل في OneDrive في نظام التشغيل Windows 10

للقيام بذلك ، افتح الدليل في قسم Bash:

man bash

في الدليل ، اضغط /لبدء البحث. اكتب ما يلي ، ثم اضغط على Enter:

assoc_expand_once

shoptستظهر بداية قسم الخيار في manالنافذة.

ضبط وعدم ضبط الخيارات

لتعيين shoptالخيارات وإلغاء ضبطها ، استخدم الأوامر التالية:

  • -s : تعيين أو تمكين.
  • -u : غير مضبوط أو تعطيل.

نظرًا لأن بعض الخيارات يتم تمكينها افتراضيًا ، فمن السهل أيضًا التحقق من الخيارات قيد التشغيل. يمكنك أن تفعل ذلك مع -sو -uالخيارات دون استخدام اسم الخيار. يؤدي هذا shoptإلى سرد الخيارات التي يتم تشغيلها وإيقاف تشغيلها.

اكتب ما يلي:

shopt -s

shopt -u | column

يمكنك استخدام shoptخيار بدون   أوامر -sأو -uلرؤية حالة التشغيل أو الإيقاف لكل خيار.

على سبيل المثال ، يمكننا كتابة ما يلي للتحقق من إعداد histverifyالخيار:

shopt histverify

يمكننا كتابة ما يلي لضبطه على:

shopt -s histverify

بعد ذلك ، يمكننا كتابة ما يلي للتحقق منه مرة أخرى:

shopt histverify

و histverifyيتغير الخيار طريقة جانبا واحدا من historyيعمل الأوامر. عادةً ، إذا طلبت historyتكرار أمر من خلال الرجوع إليه بالرقم ، مثل !245، يتم استرداد الأمر من محفوظات الأمر ويتم تنفيذه على الفور.

إذا كنت تفضل مراجعة أمر ما للتأكد من أنه الأمر الذي توقعته وقم بتحريره ، إذا لزم الأمر ، فاكتب ما يلي لتعيين shopt histverifyالخيار على تشغيل:

245

يتم استرداد الأمر وتقديمه في سطر الأوامر. يمكنك إما حذفه أو تحريره أو تنفيذه بالضغط على Enter.

خيار autocd

مع autocdضبط الخيار على تشغيل ، إذا قمت بكتابة اسم دليل في سطر الأوامر وضغطت على Enter ، فسيتم التعامل معه كما لو كنت قد كتبت cdأمامه.

اقرأ أيضاً :  كيفية نقل كلمات مرور LastPass الخاصة بك إلى Bitwarden

نكتب ما يلي لتشغيل autocdالخيار:

shopt -s autocd

ثم نكتب اسم الدليل:

Documents

خيار cdspell

عند تشغيل cdspellالخيار ، سيقوم Bash تلقائيًا بتصحيح الأخطاء الإملائية البسيطة والأخطاء المطبعية في أسماء الدلائل.

نكتب ما يلي لتعيين cdspellالخيار:

shopt -s cdspell

لمحاولة التغيير إلى دليل بأحرف صغيرة يجب أن يحتوي على حرف أولي كبير ، نكتب ما يلي:

cd documents

بعد ذلك ، يمكننا كتابة ما يلي لتجربة اسم دليل يحتوي على حرف “t” إضافي في اسمه:

cd ../Picttures

يتغير Bash في كل دليل ، بغض النظر عن الأخطاء الإملائية.

خيار xpg_echo

عند ضبط xpg_echoالخيار على تشغيل ، سيتبع أمر echo الأحرف التي تم تجاوزها ، مثل \nالسطر الجديد \tوعلامة التبويب الأفقية.

أولاً ، نكتب ما يلي للتأكد من تعيين الخيار:

shopt -s xpg_echo

ثم ندرج \nفي سلسلة سنقوم بتمريرها إلى echo:

echo "This is line one\nThis is line two"

يفرض حرف السطر الجديد المتسرب فاصل سطر في الإخراج.

ينتج عن ذلك نفس سلوك خيار -e( تمكين تفسير الهروب ) echo، ولكنه xpg_echo يسمح له أن يكون الإجراء الافتراضي.

خيار dotglob

و dotglobينبغي أن يعامل الخيار مع قليل من الحذر. يسمح .بتضمين الملفات والمجلدات التي تبدأ بنقطة ( ) في توسعات الاسم أو “globbing”. تسمى هذه “ملفات نقطية” أو “أدلة نقطية” وعادة ما تكون مخفية. و dotglobيتجاهل الخيار النقطة في بداية أسمائهم.

أولاً ، سنقوم بالبحث عن الملفات أو الدلائل التي تنتهي بكلمة “geek” بكتابة ما يلي:

ls *geek

تم العثور على ملف واحد وسرده. بعد ذلك ، سنقوم بتشغيل dotglobالخيار عن طريق كتابة ما يلي:

shopt -s dotglob

نصدر نفس lsالأمر للبحث عن الملفات والمجلدات التي تنتهي بـ “geek”:

ls *geek

هذه المرة تم العثور على ملفين وإدراجهما ، أحدهما ملف نقطي. عليك أن تكون حذرا مع rmو mvعندما كنت قد حصلت على dotglobمجموعة خيار جرا.

اقرأ أيضاً :  كيفية إنهاء الاجتماعات في وقت مبكر من برنامج Microsoft Outlook تلقائيًا

خيار nocaseglob

و nocaseglobالخيار يشبه dotglobالخيار، باستثناء nocaseglobالخلافات الأسباب في رسائل العلوية والصغيرة في أسماء الملفات والدلائل لا يمكن تجاهله في التوسعات الاسم.

نكتب ما يلي للبحث عن الملفات أو الدلائل التي تبدأ بـ “كيف”:

ls how*

تم العثور على ملف واحد وسرده. نكتب ما يلي لتشغيل nocaseglobالخيار:

shopt -s nocaseglob

ثم نكرر lsالأمر:

ls how*

تم العثور على ملفين ، أحدهما يحتوي على أحرف كبيرة.

جعل التغييرات دائمة

ستستمر التغييرات التي أجريناها فقط حتى نغلق غلاف Bash الحالي. لجعلها دائمة عبر جلسات شل المختلفة ، نحتاج إلى إضافتها إلى ملف “.bashrc” الخاص بنا.

في الدليل الرئيسي ، اكتب الأمر التالي لفتح ملف “.bashrc” في محرر نصوص Gedit الرسومي (أو قم بتغييره وفقًا للمحرر الذي تفضله):

gedit .bashrc

و geditسيفتح محرر مع ملف “.bashrc” تحميل. سترى بعض shoptالإدخالات موجودة بالفعل فيه.

يمكنك إضافة خياراتك الخاصة shoptهنا أيضًا. عند إضافتها ، احفظ التغييرات وأغلق المحرر. الآن ، عندما تفتح Bash shell جديدًا ، سيتم تعيين خياراتك لك.

خيارات بقدر ما تراه العين

صحيح أن shoptالأمر يحتوي على الكثير من الخيارات ، لكن لا يتعين عليك التعامل معها جميعًا مرة واحدة ، إن وجدت. نظرًا لوجود الكثير ، فمن المحتمل أن يكون هناك البعض الذي لن يهمك.

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

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

error: عفوا محتوي هذا الموقع محمي بموجب قانون الألفية للملكية الرقمية !!