الاسم المستعار (الأمر)
aliasهو أمرٌ في سطر الأوامر يُعرّف كلمةً يستبدلها النظام بنصٍّ مُرتبطٍ بها قبل تفسير سطر الأوامر. [ 1 ] يُستخدم غالبًا لزيادة الإنتاجية عن طريق اختصار الأوامر أو لإضافة وسائط شائعة الاستخدام. يتوفر هذا الأمر في أنظمة Unix و AmigaDOS و 4 DOS / 4NT و FreeDOS و KolibriOS و PowerShell و ReactOS و EFI shell ، [ 2 ] و IBM i . [ 3 ] كما يُوفّر وظيفة الاستبدال في MS-DOS وموجّه الأوامرDOSKEY .
بما أن الأسماء المستعارة تُعرَّف فقط لجلسة shell، فغالبًا ما تُعرَّف الأسماء المستعارة المستخدمة بانتظام في نص برمجي لبدء تشغيل الجلسة مثل .bashrc. aliasيمكن كتابة الأوامر إما في نص التكوين مباشرةً أو استيرادها من ملف منفصل.
تم إدخال الأسماء المستعارة في بيئة C shell لضمان استمراريتها في بيئات shell اللاحقة مثل tcsh و bash . ولأن هذه الأسماء المستعارة كانت تقتصر على سطر واحد، فقد كانت مفيدة لإنشاء اختصارات أوامر بسيطة نسبيًا، ولكنها غير فعالة في إنشاء بنى أكثر تعقيدًا. لم تكن الإصدارات القديمة من Bourne shell تدعم الأسماء المستعارة، ولكنها وفرت دوالًا، وهي أقوى من الاسم المستعار csh. وفي النهاية، تم تطبيق الاسم المستعار csh في بيئتي bash و ksh shell. مع بيئات shell التي تدعم كلاً من الدوال والأسماء المستعارة، ولكنها لا تدعم نصوص shell المضمنة ذات المعاملات، يُنصح باستخدام الدوال كلما أمكن ذلك. ومع ذلك، تظل الأسماء المستعارة ضرورية عند الحاجة إلى استخدام أسماء مستعارة متسلسلة.
سمات
يُعرِّف
فيما يلي مثال يوضح gcأن الأمر يقوم بتنفيذ الإجراء git commit.
alias gc = 'git commit'لا توجد علامة يساوي في لغة C shell و tcsh:
الاسم المستعار gc "git commit"لتعريف اسم مستعار في PowerShell، new-aliasيتم استخدام الأمر cmdlet التالي:
إنشاء اسم بديل جديد ci نسخ العنصرفي PowerShell، لا يمكن استخدام اسم مستعار لتحديد الوسائط الافتراضية للأمر. بدلاً من ذلك، يجب القيام بذلك عن طريق إضافة عناصر إلى المجموعة $PSDefaultParameterValues، وهي إحدى متغيرات تفضيلات PowerShell.
في PowerShell، setيُستخدم الأمر لتغيير اسم مستعار موجود. يُغيّر الأمر التالي الاسم المستعار ciلاستدعاء clsالأمر.
set-alias ci clsفي واجهة سطر الأوامر 4DOS/4NT، esetيوفر الأمر واجهة سطر أوامر تفاعلية لتعديل اسم مستعار موجود. على سبيل المثال:
eset /a cpقائمة
لعرض الأسماء المستعارة المُعرّفة:
الاسم المستعارلعرض قائمة الأسماء المستعارة بطريقة تسمح بإعادة إنشائها عن طريق استدعاء المخرجات (غير متوفر في 4DOS/4NT أو PowerShell):
الاسم المستعار -p للإبلاغ عن تعريف اسم مستعار معين:
الاسم المستعار myAlias يزيل
في أنظمة يونكس و4DOS/4NT، يمكن إزالة الأسماء المستعارة باستخدام الأمر unalias`. لإزالة copyالاسم المستعار:
نسخ الاسم المستعارلإزالة جميع الأسماء المستعارة (غير متوفر في 4DOS/4NT):
إلغاء الاسم المستعار -أ لإزالة جميع الأسماء المستعارة في 4DOS/4NT:
اسم مستعار * في PowerShell، تتم إزالة الاسم المستعار من alias:\محرك الأقراص عبر remove-item:
اسم مستعار لإزالة العنصر : ciيتجاهل
في أنظمة يونكس، يمكن استخدام الكلمة المستعارة دون استبدال باستخدام علامات الاقتباس. على سبيل المثال، لنفترض الأمر التالي الذي يُعرّف اسمًا مستعارًا lsيستدعي الأمر الأصلي lsمع الخيارات -la. لاستدعاء lsالأمر الأصلي (بدون الخيارات)، يُستخدم التركيب التالي: 'ls'أو \ls.
alias ls = 'ls -la'في بيئة 4DOS/4NT، تُستخدم علامة النجمة (*). على سبيل المثال، يُعرّف الأمر التالي dirلاستدعاء الأمر الأصلي dir(يتطلب علامة النجمة في التعريف) مع الخيارات /2/p. لاستدعاء الأمر الأصلي لاحقًا dir، تكون الصيغة كالتالي *dir:
alias dir = *dir /2/pالتسلسل
عادةً ما يتم استخدام الأسماء المستعارة لاستبدال الكلمة الأولى من سطر الأوامر، ولكن بعض الصدف مثل bashتدعم kshأيضًا التسلسل - استبدال الكلمات اللاحقة.
على سبيل المثال، يحدد ما يلي listاستدعاء lsو longكمجموعة من lsالخيارات. يجب أن ينتهي اسم الأمر المستعار بمسافة لتمكين التسلسل.
alias list = 'ls ' alias long = '-Flas'ثم، يتوسع سطر الأوامر list long myfileإلى ls -Flas myfile.
لا يمكن تحقيق السلوك الذي توفره عملية الربط التسلسلي عبر وظائف الصدفة.
وسائط الأمر
في بيئة C Shell ، يمكن تضمين الوسائط داخل الأمر باستخدام السلسلة النصية \!*. على سبيل المثال، مع هذا الاسم المستعار:
alias ls-more 'ls \!* | more'ls-more /etc /usrيتوسع الأمر ls /etc /usr | moreلعرض محتويات المجلدات /etc و /usr، ويتوقف مؤقتًا بعد كل شاشة كاملة. بدون \!*،
alias ls-more 'ls | more'بدلاً من ذلك، سيتوسع إلى ls | more /etc /usrما يحاول بشكل غير صحيح فتح الدلائل في المزيد . [ 4 ]
بعض أنواع الصدف مثل bash و ksh لا تدعم هذا التركيب، ولكنها توفر وظائف مماثلة عبر وظائف الصدفة - انظر § البدائل أدناه.
البدائل
من أفضل الممارسات تعريف اسم بديل فقط للأوامر البسيطة نسبيًا. أما البدائل للمنطق الأكثر تعقيدًا فتشمل:
- برنامج نصي شل ، يوفر قدرة غنية على تنفيذ الأوامر
- رابط رمزي في ملف المستخدم
PATH(مثل/bin)، والذي قد يسمح في بعض الحالات بالوصول إلى وظيفة أمر مخفية لعدد قليل من الأوامر التي تستخدم اسم استدعائها لتحديد وضع التشغيل - يجب أن تقوم وظيفة الصدفة، خاصة إذا كان الأمر الذي يتم إنشاؤه يحتاج إلى تعديل بيئة التشغيل الداخلية للصدفة (مثل متغيرات البيئة )، بتغيير دليل عمل الصدفة ، أو يجب تنفيذها بطريقة تضمن ظهورها في مسار البحث عن الأوامر لأي شيء باستثناء الصدفة التفاعلية (خاصة أي إصدار "أكثر أمانًا" من
rm، وما إلى ذلك)cp.mv
يمكن تحويل اسم مستعار بسيط نسبيًا يتضمن بعض الوسائط ويدعم الوسائط اللاحقة إلى دالة في الصدفة بعملية مباشرة نسبيًا. على سبيل المثال، alias ll='ls -Flas'يمكن تنفيذ الاسم المستعار كدالة }. لمنع دالة من استدعاء نفسها ، استخدم : . في إصدارات Bourne القديمة، استخدم بدلاً من .ll () { ls -Flas "$@" ;commandls () { command ls --color=auto "$@" ; }/bin/lscommand ls
مراجع
- ↑ روغهايمر، هانز (10 يونيو 2020). مرجع سريع لنظام AmigaDOS : روغهايمر، هانز : تحميل مجاني، استعارة، وبث مباشر : أرشيف الإنترنت . ISBN 9781557550491تم الاطلاع عليه بتاريخ 12 سبتمبر 2020 – عبر أرشيف الإنترنت.
- ↑ "واجهات برمجة تطبيقات EFI والبرمجة النصية" . إنتل . مؤرشف من الأصل بتاريخ 27-09-2013 . تم الاطلاع عليه بتاريخ 25-09-2013 .
- ↑ آي بي إم . "برمجة Qshell لنظام IBM System i الإصدار 7.2" (ملف PDF) . آي بي إم . مؤرشف (ملف PDF) من الأصل بتاريخ 18 سبتمبر 2020. تم الاطلاع عليه بتاريخ 5 سبتمبر 2020 .
- ↑ "أمثلة على تمرير الوسائط المُعطاة لاسم مستعار للأمر" . UNIXhelp . جامعة إدنبرة . مؤرشف من الأصل بتاريخ 25-11-2012.
للمزيد من القراءة
- ماكيلهيرن، كيرك (2006). سطر أوامر نظام التشغيل ماك أو إس إكس: يونكس من الداخل . جون وايلي وأولاده . ISBN 978-0470113851.
روابط خارجية
- : تعريف أو عرض الأسماء المستعارة – مرجع الصدفة والأدوات المساعدة، مواصفات يونكس الموحدة ، الإصدار 5 من مجموعة Open Group
- صفحة دليل Bash للاسم المستعار
- أمر الاسم المستعار من مشروع معلومات لينكس (LINFO)
- برامج يونكس القياسية
- أوامر IBM i Qshell
- أوامر ReactOS
- أوامر ويندوز
- أدوات يونكس SUS2008
- إدارة نظام التشغيل ويندوز
