كيفية إنشاء أسماء مستعارة ووظائف شل على لينكس
فاطماواتي أحمد زينوري / 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 فيه.
تُظهر المناطق المميزة منطقتين حيث يتم تحديد الأسماء المستعارة.
سيؤدي التمرير عبر المستند إلى الكشف عن قسمين آخرين مرتبطين بالأسماء المستعارة:
أولها تعريف 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:
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.
ذات صلة: أفضل أجهزة كمبيوتر Linux المحمولة للمطورين والمتحمسين
اقرأ التالي- & [رسقوو] ؛ كيفية تشفير الملفات باستخدام gocryptfs على نظام Linux
- & [رسقوو] ؛ كيفية عرض صفحات الرجل بالألوان على نظام Linux
- & [رسقوو] ؛ كيفية استخدام الأمر stat على لينكس
- & [رسقوو] ؛ كيفية استخدام الأمر cd على نظام Linux
- & [رسقوو] ؛ كيفية استخدام الأمر ls لسرد الملفات والدلائل على نظام Linux
- & [رسقوو] ؛ كيفية استخدام التعبيرات العادية (regexes) على Linux
- & [رسقوو] ؛ كيفية استخدام Pushd و popd على نظام Linux
- & [رسقوو] ؛ الدالات مقابل الصيغ في Microsoft Excel: ما الفرق؟
استخدم Dave McKay أجهزة الكمبيوتر لأول مرة عندما كان الشريط الورقي المثقوب رائجًا ، وهو يقوم بالبرمجة منذ ذلك الحين. بعد أكثر من 30 عامًا في صناعة تكنولوجيا المعلومات ، أصبح الآن صحفيًا متخصصًا في مجال التكنولوجيا. خلال مسيرته المهنية ، عمل كمبرمج مستقل ، ومدير فريق تطوير برمجيات دولي ، ومدير مشروع خدمات تكنولوجيا المعلومات ، ومؤخراً كمسؤول حماية البيانات. تم نشر كتاباته على موقع howtogeek.com و cloudavvyit.com و itenterpriser.com و opensource.com. ديف هو مبشر لينكس ومدافع مفتوح المصدر.
اقرأ السيرة الذاتية الكاملة