كيفية إنشاء أسماء مستعارة ووظائف شل على لينكس

نافذة طرفية على كمبيوتر محمول يعمل بنظام Linux

فاطماواتي أحمد زينوري / Shutterstock.com



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

اسماء مستعارة و shell scripts هي تقنيات قوية في Linux وأنظمة التشغيل الشبيهة بـ Unix والتي تسمح لك بصقل تجربة سطر الأوامر لتكون ما تريده تمامًا. يمكنك تحديد أوامرك الخاصة بما يتناسب مع احتياجاتك الخاصة ، ولتخفيف عبء المهام المتكررة.





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

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



الأسماء المستعارة المحددة مسبقًا

بعض الأسماء المستعارة محددة مسبقًا لك. للاطلاع على قائمة الأسماء المستعارة المحددة في نظامك ، استخدم الأمر alias بدون معلمات:

alert

الإعلانات

هذه هي الأسماء المستعارة التي تم تحديدها في آلة اختبار Ubuntu التي تم البحث في هذه المقالة عليها. إذا حددت أي أسماء مستعارة مخصصة ، فستظهر في هذه القائمة أيضًا.



في الجزء العلوي من القائمة ، يوجد اسم مستعار ذو مظهر معقد يسمى ls. سنصل إلى ذلك في لحظة. هناك مجموعة من الأسماء المستعارة المختلفة لـ grep وهناك مجموعة من الأسماء المستعارة التي توفر إخراج اللون إلى grep عائلة الأوامر . على سبيل المثال ، مع تحديد هذه الأسماء المستعارة ، عندما تكتب:

alias

سوف يفسرها النظام على النحو التالي:

grep

هذا يدل على نقطة مهمة مع الأسماء المستعارة. يمكن أن يكون لها نفس اسم الأوامر الموجودة. يمكنهم حتى احتواء الأمر الأصلي داخل أنفسهم.

هنا تعريف ' الاسم المستعار.

grep
  • ال --color=auto يتم استخدام الأمر لتعريف الاسم المستعار.
  • يتم إعطاء اسم الاسم المستعار بعد ذلك. في هذا المثال هو alert.
  • علامة يساوي يربط اسم من الاسم المستعار ل الجسم من الاسم المستعار. بالنسبة لجميع الأسماء المستعارة باستثناء البسيطة جدًا ، يتم وضع نص الاسم المستعار داخل علامات اقتباس مفردة sleep.
  • نص الاسم المستعار هو القسم الذي يتم تنفيذه عند استخدام الاسم المستعار في سطر الأوامر.

يستدعي نص هذا الاسم المستعار ببساطة alert الأمر باستخدام alias اختيار.

الاسم المستعار في حالة تأهب

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

إليك مثال بسيط. ال cls سينام الأمر لمدة خمس ثوانٍ. ، clear ثم سيتم استدعاء الاسم المستعار. يتحقق الاسم المستعار من الاستجابة من الأمر السابق. يقوم باستخراج آخر أمر من ملف التاريخ. يحدد ما إذا كان الأمر قد اكتمل بنجاح أم لا. ثم يعرض النتائج في تنبيه النظام.

الإعلانات

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

ls

بعد خمس ثوانٍ ، نرى تنبيه النظام هذا:

تنبيه النظام لأمر السكون

الرمز عبارة عن نافذة طرفية صغيرة ، مما يعني أن كل شيء سار على ما يرام. دعونا نحاول ذلك مرة أخرى بأمر نعلم أنه سيفشل:

cls

يحتوي تنبيه نظامنا الآن على رمز خطأ.

تحديد الاسم المستعار التافه

كما رأينا ، لتحديد الاسم المستعار ، نستخدم gedit يأمر.

سنقوم بإنشاء اسم مستعار لـ alert يأمر. سيطلق على اسمنا المستعار if وسوف يستدعي ls يأمر .

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

h. history ftc

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

إذن كيف نجعل الأسماء المستعارة لدينا دائمة؟

ملف .bashrc والأسماء المستعارة

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

الإعلانات

اكتب الأمر التالي في المجلد الرئيسي الخاص بك لمشاهدة محتويات ملف .bashrc مع تمييز بناء الجملة.

.

سيؤدي هذا إلى تشغيل ftc محرر مع تحميل ملف .bashrc فيه.

gedit مع .bashrc تحميلها

تُظهر المناطق المميزة منطقتين حيث يتم تحديد الأسماء المستعارة.

سيؤدي التمرير عبر المستند إلى الكشف عن قسمين آخرين مرتبطين بالأسماء المستعارة:

أولها تعريف unalias الاسم المستعار. والثاني هو ftc بيان. يترجم إلى ، إذا كان الملف .bash_aliases موجودًا ، فاقرأه بتنسيق.

إذا كان لديك عدد قليل من الأسماء المستعارة التي ترغب في تعريفها ، فيمكنك وضعها في ملف .bashrc الخاص بك. ضعهم في أسفل القسم الذي يحتوي على unalias اسماء مستعارة.

الإعلانات

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

تخزين الأسماء المستعارة في ملف .bash_aliases

لن يكون ملف .bash_aliases موجودًا حتى تقوم بإنشائه. يمكنك إنشاء الملف باستخدام هذا الأمر:

unalias

دعنا نعدل الملف ونضيف بعض الأسماء المستعارة إليه. سيفتح هذا الأمر ملف .bash_aliases في -a محرر.

#

لقد أضفنا ثلاثة أسماء مستعارة. الأول هو alias الاسم المستعار الذي استخدمناه سابقًا. التالي يسمى gedit وهي طريقة مختصرة لاستدعاء Ctrl+C يأمر.

الاسم المستعار الثالث يسمى Ctrl+V. هذا يعني عدد أنواع الملفات.

هذا الاسم المستعار هو أكثر تعقيدًا ، لذلك يتم تغليفه بعلامات اقتباس مفردة. يستخدم سلسلة من الأوامر مرتبطة ببعضها البعض بواسطة أنابيب. ينتج قائمة مرتبة من امتدادات الملفات المختلفة وأسماء الدلائل ، مع عدد لكل إدخال في القائمة.

ذات صلة: كيفية استخدام الأنابيب على نظام Linux

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

الإعلانات

يمكننا أيضًا استخدام Bash shell المدمج gedit ل قراءة وتنفيذ الأوامر في ملف. نظرًا لأنه تتم قراءة ملف .bash_alias الخاص بنا عند معالجة .bashrc ، يجب علينا إجراء اختبارنا عن طريق استدعاء bashrc. بهذه الطريقة يمكننا التحقق من استدعاء ملف .bash_alias من .bashrc وأن الأسماء المستعارة لدينا حية وبصحة جيدة.

الأوامر التي استخدمناها هي:

gedit

لتحرير ملف bash_alias.

up

سيؤدي هذا إلى قراءة وتنفيذ الأوامر داخل .bashrc ، والتي ستستدعي .bash_alias.

up

سيؤدي هذا إلى استدعاء up الاسم المستعار.

يستجيب اسمنا المستعار مما يعني أن Bash قد قرأ باللغتين .bashrc و .bash_aliases ، والآن أصبحت الأسماء المستعارة الجديدة مباشرة.

يمكنك الآن المضي قدمًا وإضافة أسماء مستعارة جديدة إلى ملف .bash_aliases فور ظهورها لك. إذا وجدت نفسك تقوم بأشياء أكثر من مرة أو مرتين ، ففكر في إنشاء اسم مستعار لها.

إزالة الأسماء المستعارة

هناك أمر ل إزالة الأسماء المستعارة حتى لا يتعرف عليهم BAsh ولا يستجيب لهم. بشكل منعش ومباشر ، يسمى الأمر cd ...

الإعلانات

لاستخدامه ، أدخل اسم الاسم المستعار الذي ترغب في نسيانه Bash. لجعل باش تنسى up الاسم المستعار ، استخدم cd .. مثله:

function

يمكنك استخدام gedit لإزالة الأسماء المستعارة التي حددتها وأي من الأسماء المستعارة المحددة مسبقًا.

لإزالة كافة الأسماء المستعارة من نظامك ، استخدم up (الكل) الخيار:

levels

ومع ذلك ، لن يكون فقدان ذاكرة باش دائمًا. في المرة التالية التي تفتح فيها نافذة طرفية ، ستعود الأسماء المستعارة المنسية. لمسحها حقًا ، تحتاج إلى إزالتها من ملفات .bashrc و. bash_alias.

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

وظائف شل

يمكن تعريف الأسماء المستعارة لـ Lika ووظائف Bash shell داخل ملف bashrc. ولكن غالبًا ما يكون من الأفضل وضعها في ملف التعريفات الخاص بها. سنسميها bash_functions باتباع الاصطلاح المستخدم لملف .bash_aliases.

الإعلانات

هذا يعني أننا بحاجة إلى إخبار ملف .bashrc بقراءة تعريفاتنا. يمكننا نسخ وتعديل مقتطف الكود الذي يقرأ في ملف .bash_aliases. إطلاق levels وقم بتحميل ملف .bashrc بهذا الأمر:

levels

تحتاج إلى إضافة القسم المميز الموضح أدناه.

يمكنك تمييز قسم الاسم المستعار والضغط على levels ثم انتقل إلى حيث تريد القسم الجديد واضغط على done للصق نسخة من النص. ثم كل ما عليك القيام به هو تغيير المكانين حيث تقول .bash_aliases إلى .bash_functions.

يمكننا حفظ هذه التغييرات وإغلاق gedit.

سنقوم الآن بإنشاء وتحرير ملف bash_functions ، ووضع تعريف دالة فيه.

up type

سيؤدي هذا إلى فتح ملف .bash_functions الفارغ في type.

سنقوم بإضافة وظيفة بسيطة تسمى ftc. up سيأخذ معلمة سطر أوامر واحدة ، وهي رقم.

alias
سيتصل بعد ذلك بـ
grep
هذا العدد من المرات. لذا ، إذا استخدمت الأمر

grep --color=auto

alias grep='grep --color=auto'
سوف يستدعي
sleep 5; alert
مرتين وسيصعد مستويين في شجرة الدليل.

هناك طرق مختلفة لتحديد وظيفة. هنا واحد:

DoomedToFail; alert
الإعلانات

كلمة

alias cls=clear
هو اختياري. إذا كنت تقليديًا ، فاستخدمها ، وإذا لم تضايقك من كتابتها ، فاتركها.

هذه هي وظيفتنا الكاملة في

ls -l
:

وظيفة up () Bash shell في gedit

cls

يمثل هذا بداية تعريف الدالة لدينا ، ويسمي الوظيفة

gedit .bashrc
.

touch .bash_aliases

يؤدي هذا إلى إنشاء متغير يسمى

gedit .bash_aliases
ويضبطه على قيمة المعلمة الأولى. ستكون هذه المعلمة رقمًا يقدمه المستخدم عند استدعاء الوظيفة. ال
gedit .bash_alias
يعني معلمة سطر الأوامر الأولى.

. .bashrc

ثم ندخل في حلقة. يُترجم هذا على أنه بينما قيمة

ftc
أكبر من الصفر ، افعل ما هو موجود في جسم الحلقة.

داخل جسم الحلقة ، لدينا أمرين. هم انهم:

unalias ftc

تحرك لأعلى مستوى في شجرة الدليل.

unalias -a

تعيين

gedit .bashrc
إلى قيمة جديدة ، وهي أقل بمقدار واحد من قيمتها الحالية.

الإعلانات

ثم نعود إلى أعلى الحلقة ، المقارنة بين قيمة

touch .bash_functions
والصفر مصنوع مرة أخرى. إذا كان
gedit .bash_functions
أكبر من الصفر ، يتم تنفيذ جسم الحلقة مرة أخرى. إذا لم يكن أكبر من الصفر ، تنتهي الحلقة ، وننتقل إلى
up 2
البيان ، وانتهت الوظيفة.

احفظ هذه التغييرات وأغلق

function up() {
.

سنقرأ وننفذ الأوامر في bashrc والتي يجب أن تقرأ وتنفذ الأوامر في ملف bash_functions الخاص بنا.

function up() {

يمكننا اختبار الوظيفة عن طريق الانتقال إلى موقع ما في شجرة الدليل واستخدام

levels=
للعودة إلى نقطة أعلى في شجرة الدليل.

while [ '$levels' -gt '0' ]; do
cd ..

تعمل الوظيفة. لقد تم نقل مستويين من الدليل إلى أعلى في الشجرة.

تتبع مع النوع

أثناء قيامك ببناء مجموعة من الأسماء المستعارة ومكتبة من الوظائف ، قد يصبح من الصعب تذكر ما إذا كان أمر معين اسمًا مستعارًا أم دالة. يمكنك استخدام

levels=$(($levels - 1))
يأمر لتذكيرك . الشيء الرائع هنا هو أنه يمكنك أيضًا رؤية التعريف.

دعونا نستخدم

. .bashrc
على
cd ./work/backup/
الاسم المستعار و
up 2
وظيفة.

type ftc
type up

الإعلانات

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

ابدأ التجميع

يمكن للأسماء المستعارة والوظائف تسريع استخدامك لسطر الأوامر بشكل كبير. يمكنهم تقصير تسلسل الأوامر ، ويسمحون لك بخبز الخيارات التي تستخدمها دائمًا مع الأوامر القياسية.

في كل مرة ترى فيها سطرًا واحدًا أنيقًا أو وظيفة مفيدة ، يمكنك تعديلها وتخصيصها ، ثم إضافتها إلى ملفات .bash_aliases أو ملفات .bash_functions.

أوامر لينكس
الملفات قطران · الكهروضوئية · قط · تاك · chmod · سيطرة · فرق · سيد · مع · رجل · Pushd · popd · fsck · اختبار · فيما يليها · فد · باندوك · قرص مضغوط · المسار $ · awk · انضم · جي ق · يطوى · فريد · جورنال سي تي ال · ذيل · حالة · ls · fstab · رما - طرد - قذف · أقل · chgrp · تشاون · مراجعة · نظرة · سلاسل · نوع · إعادة تسمية · أزيز · بفك · تتعدد · أومونت · تثبيت · fdisk · مكفس · جمهورية مقدونيا · rmdir · رسينك · مدافع · gpg · نحن · نانو · مكدير · ال · ln · تصحيح · يتحول · rclone · أجاد · SRM
العمليات الاسم المستعار · شاشة · أعلى · لطيف · رائع · تقدم · دعامة · النظام · تمكس · chsh · التاريخ · في · حزمة · مجانا · التي · dmesg · usermod · ملاحظة · الجذور · xargs · tty · الخنصر · lsof · vmstat · نفذ الوقت · حائط · نعم · قتل · نايم · سودو · له · زمن · المجموعة · usermod · مجموعات · lshw · اغلق · اعادة التشغيل · توقف · انقطاع التيار الكهربائي · passwd · lscpu · كرونتاب · تاريخ · bg · fg
الشبكات netstat · بينغ · مسار التتبع · IP · ss · الذي هو · fail2ban · bmon · أنت · اصبع اليد · nmap · بروتوكول نقل الملفات · لفة · wget · من الذى · من أنا · في · iptables · ssh-كجن · ufw

ذات صلة: أفضل أجهزة كمبيوتر Linux المحمولة للمطورين والمتحمسين

اقرأ التالي صورة الملف الشخصي لـ Dave McKay ديف مكاي
استخدم Dave McKay أجهزة الكمبيوتر لأول مرة عندما كان الشريط الورقي المثقوب رائجًا ، وهو يقوم بالبرمجة منذ ذلك الحين. بعد أكثر من 30 عامًا في صناعة تكنولوجيا المعلومات ، أصبح الآن صحفيًا متخصصًا في مجال التكنولوجيا. خلال مسيرته المهنية ، عمل كمبرمج مستقل ، ومدير فريق تطوير برمجيات دولي ، ومدير مشروع خدمات تكنولوجيا المعلومات ، ومؤخراً كمسؤول حماية البيانات. تم نشر كتاباته على موقع howtogeek.com و cloudavvyit.com و itenterpriser.com و opensource.com. ديف هو مبشر لينكس ومدافع مفتوح المصدر.
اقرأ السيرة الذاتية الكاملة

مقالات مثيرة للاهتمام