مقارنة بين واجهات سطر الأوامر

لقطة شاشة لطرفية تعرض أوامر Bash المختلفة والناتج عنها.

تسرد هذه المقالة الجوانب المتشابهة لأغلفة أنظمة التشغيل البارزة .

الخصائص العامة

الميزات التفاعلية

تنفيذ في الخلفية

يُتيح التنفيذ في الخلفية تشغيل الأوامر دون تدخل المستخدم في الطرفية، مما يُتيح استخدام سطر الأوامر لإجراء مهام أخرى. وتُتيح أنظمة POSIX وغيرها من أنظمة Unix التنفيذ في الخلفية باستخدام الرمز & في نهاية الأمر.

إنجازات

إكمال سطر الأوامر في Bash .

تساعد ميزة الإكمال المستخدم في كتابة الأوامر في سطر الأوامر، من خلال البحث عن الكلمات المطابقة واقتراحها للكلمات غير المكتملة. ويتم طلب الإكمال عادةً بالضغط على مفتاح الإكمال (غالباً مفتاح Tab ↹).

إكمال اسم الأمر هو إكمال اسم الأمر. في معظم أنظمة التشغيل، يمكن أن يكون الأمر برنامجًا في مسار الأوامر (عادةً ما يكون $PATH)، أو أمرًا مدمجًا، أو دالة، أو اسمًا مستعارًا.

إكمال المسار هو إكمال مسار الملف، سواء كان مسارًا نسبيًا أو مطلقًا.

يُعد إكمال الأحرف البديلة تعميمًا لإكمال المسار، حيث يطابق التعبير أي عدد من الملفات، باستخدام أي صيغة مدعومة لمطابقة الملفات .

الإكمال التلقائي للمتغيرات هو إكمال اسم المتغير نفسه ( متغير بيئة أو متغير شل). توفر لغات Bash وzsh وfish ميزة الإكمال التلقائي لجميع أسماء المتغيرات. أما PowerShell، فتُوفر هذه الميزة لأسماء متغيرات البيئة، ومتغيرات الشل، وأسماء المعاملات من داخل الدوال المُعرَّفة من قِبل المستخدم.

إكمال وسيطات الأوامر هو إكمال وسائط أمرٍ مُحدد. يوجد نوعان من الوسائط: المُسماة والموضعية. تُعرف الوسائط المُسماة، والتي تُسمى غالبًا بالخيارات ، باسمها أو الحرف الذي يسبق قيمتها، بينما تتكون الوسائط الموضعية من القيمة فقط. تسمح بعض أنظمة التشغيل بإكمال أسماء الوسائط، لكن القليل منها يدعم إكمال قيمها.

توفر بيئات Bash وzsh وfish ميزة إكمال أسماء المعاملات من خلال تعريف خارجي للأمر، مُوزّع في ملف تعريف إكمال منفصل. بالنسبة لإكمال أسماء/قيم معاملات الأوامر، تفترض هذه البيئات إكمال المسار/اسم الملف إذا لم يُعرّف إكمال للأمر. يمكن إعداد الإكمال لاقتراح حلول ديناميكيًا عن طريق استدعاء دالة في بيئة التشغيل. [ 45 ] تدعم بيئة fish أيضًا تحليل صفحات الدليل لاستخراج معلومات المعاملات التي يمكن استخدامها لتحسين الإكمال/الاقتراحات. في PowerShell، تكشف جميع أنواع الأوامر (cmdlets، الدوال، ملفات البرامج النصية) بطبيعتها عن بيانات حول أسماء وأنواع ونطاقات/قوائم القيم الصالحة لكل وسيط. تستخدم PowerShell هذه البيانات الوصفية لدعم إكمال أسماء وقيم الوسائط تلقائيًا للأوامر/الدوال المدمجة، والأوامر/الدوال المُعرّفة من قِبل المستخدم، وكذلك ملفات البرامج النصية. يمكن لأوامر cmdlets الفردية أيضًا تعريف إكمال ديناميكي لقيم الوسائط حيث تُحسب قيم الإكمال ديناميكيًا على النظام قيد التشغيل.

سجل الأوامر

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

قد تتمكن أيضًا أنظمة التشغيل التي تدعم الإكمال من إكمال الأمر مباشرة من سجل الأوامر عند إعطاء جزء جزئي/أولي من الأمر السابق.

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

سؤال حجاجي إلزامي

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

اقتراحات تلقائية

إكمال سطر الأوامر في PowerShell .

تعرض واجهات سطر الأوامر التي تتميز بالاقتراحات التلقائية خيارات إكمال الأوامر أثناء كتابة المستخدم. تدعم واجهات PowerShell و fish هذه الميزة بشكل أصلي؛ حيث يؤدي الضغط على المفتاح إلى إدراج الإكمال.Tab ↹

قد تختلف تطبيقات هذه الميزة بين أنواع الصدف المختلفة؛ على سبيل المثال، يستخدم كل من PowerShell [ 46 ] و zsh [ 47 ] وحدة خارجية لتوفير الإكمال التلقائي، بينما يستمد fish إكماله التلقائي من سجل أوامر المستخدم. [ 48 ]

سجل الدليل، أو المكدس، أو ميزات مماثلة

قد تسجل أنظمة التشغيل سجلًا للمجلدات التي زارها المستخدم وتتيح الانتقال السريع إلى أي موقع مسجل. يُشار إلى هذا باسم "مكدس المجلدات". وقد تم تطبيق هذا المفهوم في وقت مبكر من عام 1978 [ 49 ] مع إصدار نظام التشغيل C (csh).

تتميز برامج تفسير سطر الأوامر 4DOS وخليفتها الرسومية Take Command Console أيضًا بمكدس دليل.

تغيير الدليل الضمني

يمكن استخدام اسم الدليل مباشرةً كأمر يقوم ضمنيًا بتغيير الموقع الحالي إلى الدليل.

يجب التمييز بين هذا وبين ميزة تحميل محرك الأقراص غير ذات الصلة التي تدعمها أنظمة Concurrent DOS و Multiuser DOS و System Manager و REAL/32 ، حيث يتم تحديث حرف محرك الأقراص L: ضمنيًا للإشارة إلى مسار تحميل التطبيق المُحمّل، مما يسمح للتطبيقات بالإشارة إلى الملفات الموجودة في دليل التحميل الخاص بها باستخدام حرف محرك أقراص موحد بدلاً من مسار مطلق. [ 50 ]

التصحيح التلقائي

عرض توضيحي للإكمال التلقائي والتصحيح التلقائي لبرنامج telnet باستخدام Zsh .

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

تتميز واجهات الأوامر tcsh و zsh بميزة التدقيق الإملائي /التصحيح الاختياري عند استدعاء الأوامر.

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

توفر وحدة PowerShell النمطية PSReadLine [ 33 ] (المرفقة مع الإصدار 5.0) خيار تحديد كتلة برمجية CommandValidationHandler يتم تشغيلها قبل إرسال الأمر. يتيح ذلك تصحيحًا مخصصًا للأوامر التي تُكتب بشكل خاطئ عادةً، والتحقق من صحة الأمر قبل تنفيذه فعليًا.

مؤشر التقدم

يمكن لبرنامج نصي (أو مهمة) أن يبلغ المستخدم التفاعلي عن تقدم المهام طويلة الأمد.

قد توفر أنظمة يونكس/لينكس أدوات أخرى تدعم استخدام مؤشرات التقدم من البرامج النصية أو كأوامر مستقلة، مثل البرنامج "pv". [ 51 ] ومع ذلك، فإن هذه ليست ميزات مدمجة في الصدفة.

قوائم الدليل الملونة

توفر معالجات سطر الأوامر من JP Software إمكانية تلوين أسماء الملفات والمجلدات في قوائم الدليل بناءً على امتداد الملف و/أو سماته من خلال %COLORDIR%متغير بيئي محدد اختياريًا.

بالنسبة لأنظمة يونكس/لينكس، هذه ميزة من ميزات الأمر ls والطرفية.

تمييز النص

تدعم معالجات سطر الأوامر في DOS Plus و Multiuser DOS و REAL/32 وجميع إصدارات DR-DOS عددًا من متغيرات البيئة الاختيارية لتعريف تسلسلات الهروب، مما يسمح بالتحكم في تمييز النص أو عكسه أو تلوينه لأغراض العرض أو الطباعة في أوامر مثل TYPE . تدعم جميع معالجات سطر الأوامر المذكورة تسلسلات الهروب و . في حال تعريفها، تُرسل هذه التسلسلات قبل أسماء الملفات وبعدها. مثال على تسلسل الهروب هو مع ANSI.SYS ، وذلك لطرفية ASCII أو لطابعة IBM أو ESC/P . وبالمثل، فإن التسلسلات النموذجية لـ هي و و على التوالي. يدعم COMMAND.COM المتغيرين و فقط في DR-DOS 7.02 والإصدارات الأحدث لتعريف تسلسلات تُرسل قبل كتل النصوص وبعدها للتحكم في تمييز النص أو ترقيم الصفحات أو خيارات التنسيق الأخرى.%$ON%%$OFF%%$ON%\033[1m\033p\016%$OFF%\033[0m\033q\024%$HEADER%%$FOOTER%

بالنسبة لأنظمة يونكس/لينكس، هذه ميزة من ميزات الطرفية.

تمييز بناء الجملة

من السمات المميزة لـ Fish Shell خاصية تمييز الصيغة المدمجة، فبينما يكتب المستخدم، يتم تلوين النص للدلالة على ما إذا كان الإدخال أمرًا صالحًا أم لا (أي أن الملف التنفيذي موجود وأن المستخدم لديه صلاحيات تشغيله)، ويتم تسطير مسارات الملفات الصالحة. [ 52 ]

يُقدّم مشروع مستقل ميزة تمييز الصيغة كإضافة إلى Z Shell (zsh). [ 53 ] مع ذلك، فهي ليست جزءًا من الصدفة.

يُتيح PowerShell إمكانية تخصيص تمييز بناء الجملة في سطر الأوامر من خلال وحدة PSReadLine [ 33 ] . يمكن استخدام هذه الوحدة مع PowerShell الإصدار 3.0 والإصدارات الأحدث، وهي مُضمّنة مع الإصدار 5.0 والإصدارات الأحدث. يتم تحميلها افتراضيًا في مُضيف سطر الأوامر "powershell.exe" منذ الإصدار 5.0. [ 54 ]

يوفر برنامج Take Command Console (TCC) ميزة تمييز الصيغة في البيئة المتكاملة.

مساعدة حساسة للسياق

4DOS، 4OS2، 4NT / Take Command Console and PowerShell (in PowerShell ISE) يبحث عن معلومات المساعدة الحساسة للسياق عند الضغط على زر معين.F1

يوفر Zsh أشكالًا مختلفة من المساعدة القابلة للتكوين والحساسة للسياق كجزء من أداة run-help الخاصة به، أو أمر _complete_help ، أو في إكمال خيارات بعض الأوامر.

يوفر غلاف السمكة وصفًا موجزًا ​​لعلامات الأمر أثناء إكمال علامة التبويب.

ميزات البرمجة

صدَفَةالوظائفمعالجة الاستثناءاتالبحث والاستبدال في عمليات استبدال المتغيراتمكتبة الدوال الرياضيةالمصفوفات الخطية أو القوائمتوليد أرقام شبه عشوائيةبايت كود
نسخة بورن شيل لعام 1977لانعم (عن طريق الفخ )لالالالالالالانعملالا
الإصدار الحالي من بورن شيلنعم منذ SVR2نعم (عن طريق الفخ )لانعم [ ملاحظة 8 ]لالالالالانعملالا
واجهة سطر أوامر POSIXنعمنعم (عن طريق الفخ )لانعملالالالالانعملالا
باش (الإصدار 4.0)نعمنعم (عن طريق الفخ )نعم (عبر صيغة ${// })نعملالانعمنعملانعمنعم ( $RANDOM )لا
cshلالانعم (عبر صيغة $var:s/// )نعملالانعملالانعملالا
tcshلالانعم (عبر صيغة $var:s/// )نعملالانعملالانعملالا
غلاف هاميلتون سينعملانعم (عبر صيغة $var:s/// )نعمنعمنعمنعملالانعمنعم (منفعة عشوائية)لا
Scshنعم؟نعم (عبر دوال السلاسل النصية والتعبيرات النمطية)؟؟؟نعم؟نعمنعمنعم (عدد صحيح عشوائي، عدد حقيقي عشوائي)نعم (المترجم هو آلة افتراضية Scheme48، عبر scshvm )
ksh (ksh93t+)نعمنعم (عن طريق الفخ )نعم (عبر صيغة ${// } والأوامر المدمجة)نعمنعمنعمنعمنعملانعمنعم ( $RANDOM )نعم (اسم المترجم shcomp )
pdkshنعمنعم (عن طريق الفخ )لانعملالانعملالانعمنعم ( $RANDOM )لا
zshنعمنعمنعم (عبر صيغة ${:s// } و ${// })نعمنعمنعم ( وحدة zsh/mathfunc )نعمنعملانعمنعم ( $RANDOM )نعم (أمر zcompile المدمج )
رمادنعمنعم (عن طريق الفخ )لانعم (منذ عام 1992) [ 55 ]لالالالالانعملالا
الحزب الشيوعي الصينيلا؟لالا؟؟لالالالالالا
COMMAND.COMلاجزئي (فشل تلقائي فقط (عبر الأمر /F (أو /N في بعض إصدارات DR-DOS))لالالالالالالالالالا
OS/2 CMD.EXEلالالا؟لالا؟لالالالالا
ويندوز CMD.EXEنعم (عبر الاتصال :label )لانعم (عبر صيغة التعبير SET % varname :) نعم (عبر SET /A ) [ 56 ]لالانعم (عبر SET [ 57 ] )لالالانعم ( عشوائي )لا
4DOSنعمنعم (عبر أمر التشغيل ، وخيار الفشل التلقائي عبر الأمر 4DOS /F )نعم (عبر دالة %@Replace[...] )نعم (عبر SET /A )؟؟نعم (عبر النطاقات، وقوائم التضمين، وقوائم الملفات @، وأمر FOR )لالانعمنعم ( دالة %@Random[...] )نعم (عبر أمر BATCOMP )
4OS2؟؟؟؟؟؟؟؟لانعمنعم ( دالة %@Random[...] )؟
TCC (سابقًا 4NT)نعمنعم (عبر تشغيل وأوامر ...MONITOR المختلفة )نعم (عبر دالة %@Replace[...] )نعم (عبر SET /A )؟؟نعم (عبر النطاقات، وقوائم التضمين، وقوائم الملفات @، وأمر FOR )؟لانعمنعم ( دالة %@Random[...] )نعم (عبر أمر BATCOMP )
باور شيلنعمنعم (محاولة-التقاط-أخيراً)نعم ( عامل الاستبدال )نعمنعم[الرياضيات] الصف [ 58 ]نعمنعمنعم [ 59 ]نعمنعمنعم، أوتوماتيكي
rcنعمنعملانعم؟؟نعم؟لانعملالا
بينشيلنعمنعم؟نعم؟؟نعمنعملانعمنعمنعم
VMS DCLنعمنعملانعملانعم، بالنسبة للبرامج المُجمّعةنعملالالالالا
سمكةنعمنعم (عن طريق الفخ )نعم، عبر الأمر المدمج في السلسلة [ 60 ]نعمنعمنعمنعملالانعمنعم ( عشوائي )لا

معالجة السلاسل النصية ومطابقة أسماء الملفات

صدَفَةمعالجة السلاسل النصيةالتناوب ( توسيع الدعامة )مطابقة الأنماط ( التعبيرات النمطية المدمجة )مطابقة الأنماط ( تجميع أسماء الملفات )تحديد مُحدِّدات الغلوب (إنشاء اسم الملف بناءً على سمات الملف)التجميع المتكرر (إنشاء ملفات من أي مستوى من الدلائل الفرعية)
نسخة بورن شيل لعام 1977؟لالانعم ( * ، ؟ ، [...] )لالا
أحدث إصدار من بورن شيلجزئي (إزالة البادئات واللواحق في توسيع المتغيرات)لالانعم ( * ، ؟ ، [...] )لالا
واجهة سطر أوامر POSIXجزئي (إزالة البادئات واللواحق في توسيع المتغيرات)لالانعم ( * ، ؟ ، [...] )لالا
باش (الإصدار 4.0)جزئي (إزالة البادئات واللواحق في توسيع المتغيرات)نعمنعمنعم ( * ، ؟ ، [...] ، {... })لانعم ( **/... )
cshنعم (مع استخدام ":" وعوامل التحرير الأخرى)نعملانعملالا
tcshنعم (مع استخدام ":" وعوامل التحرير الأخرى)نعمنعمنعملالا
غلاف هاميلتون سينعم (:s وعوامل التحرير الأخرى + substr و strlen و strindex و printf و reverse و upper و lower و concat ووظائف أخرى مدمجة)نعملانعملانعم (عبر دليل غير محدد "..." حرف بدل [ 61 ] )
Scsh؟؟نعمنعملالا
ksh (ksh93t+)جزئي (إزالة البادئات واللواحق واستبدال السلاسل في توسيع المتغيرات)نعم [ 62 ]نعمنعم ( * ، ؟ ، [...] )لانعم (مع تعيين -G ، لا تتبع الروابط الرمزية)
pdksh؟نعم [ 62 ]لانعملالا
zshنعم (من خلال معالجة المتغيرات: على سبيل المثال استخراج السلاسل الفرعية، والتحويلات المختلفة عبر توسيع المعلمات)نعمنعمنعم ( * ، ؟ ، [...] ، التجميع الموسع [ 63 ] )نعمنعم ( **/... أو ***/... لمتابعة الروابط الرمزية)
رماد؟؟لانعملالا
الحزب الشيوعي الصينيلالالالالالا
COMMAND.COMلالالانعم ( * ، ؟ )لالا
OS/2 CMD.EXEلالالانعم ( * ، ؟ )جزئي (فقط في الأمر DIR /A:... )لا
ويندوز CMD.EXEجزئي (فقط من خلال FOR /F و SET /A )لالا [ ملاحظة 17 ]نعم ( * ، ؟ )جزئي (فقط في الأمر DIR /A:... )نعم (عبر الأمر FOR /R ، أو، عند توفره، بشكل غير مباشر عبر خيار /S subdir)
4DOSنعم (من خلال الدوال المتغيرة %@...[] ، ومعالجة متغيرات البيئة الموسعة، وأوامر السلاسل النصية المختلفة، و FOR /F و SET /A )لالانعم ( * ، ؟ ، [...] ، أحرف البدل الموسعة ، أمر SELECT المنبثق)نعم (عبر خيارات السمة /A:... وخيارات الوصف /I"..." ونطاقات استبعاد الملفات /[S...] و /[T...] و /[D...] و /[!...]نعم (عبر الأمر FOR /R ، أو بشكل غير مباشر عبر الأمر GLOBAL أو، عند توفره، خيار /S subdir)
4OS2؟لالا؟؟؟
TCC (سابقًا 4NT)نعم (من خلال الدوال المتغيرة %@...[] ، ومعالجة متغيرات البيئة الموسعة، وأوامر السلاسل النصية المختلفة، و FOR /F و SET /A )لانعمنعم ( * ، ؟ ، [...] ، أحرف البدل الموسعة ، أمر SELECT المنبثق)نعم (عبر خيارات السمة /A:... وخيارات الوصف /I"..." ونطاقات استبعاد الملفات /[S...] و /[T...] و /[D...] و /[O...] و /[!... ]نعم (عبر الأمر FOR /R ، أو بشكل غير مباشر عبر الأمر GLOBAL أو، عند توفره، خيار /S subdir)
باور شيلنعم (دمج/سلسلة فرعية/إدراج/إزالة/استبدال، تحويل إلى أحرف صغيرة/تحويل إلى أحرف كبيرة، تقليم/تقليم البداية/تقليم النهاية، مقارنة، يحتوي/يبدأ بـ/ينتهي بـ، تنسيق، فهرس/آخر فهرس، حشو/حشو اليسار/حشو اليمين، تقسيم/ضم، دوال التعبير النمطي ودوال السلاسل الأخرى في .NET)عامل النطاق للأرقام [ 64 ]نعم (دعم كامل للتعبيرات النمطية) [ ملاحظة 18 ]نعم ( * ، ؟ ، [...] )؟؟
rc؟؟نعم (معامل ~)نعملالا
بينشيل؟؟نعم؟؟؟
VMS DCLنعملالانعملانعم (عبر [SUBDIR...] )
سمكةنعم (دالة سلسلة نصية مدمجة)نعمنعم (عبر وظائف مطابقة واستبدال السلاسل النصية المدمجة )نعم ( * ، ؟ ، {... })لانعم ( **/... )

التواصل بين العمليات

صدَفَةالأنابيباستبدال الأوامرعملية الاستبدالالأغلفة الفرعيةاتصالات TCP / UDP كتدفقاتتكديس ضغطات المفاتيح
بورن شيلبايتات متزامنةنعملانعملاغير متوفر [ رقم 19 ]
واجهة سطر أوامر POSIXبايتات متزامنةنعملانعملاغير متوفر [ رقم 19 ]
باش (الإصدار 4.0)بايتات متزامنةنعمنعم (إذا كان النظام يدعم /dev/fd/ n أو الأنابيب المسماة)نعمنعم (للعميل فقط)غير متوفر [ رقم 19 ]
cshبايتات متزامنةنعملانعملاغير متوفر [ رقم 19 ]
tcshبايتات متزامنةنعملانعملاغير متوفر [ رقم 19 ]
غلاف هاميلتون سيبايتات متزامنةنعملانعملا؟
Scshنص؟؟؟نعمغير متوفر [ رقم 19 ]
ksh (ksh93t+)بايتات (قد تحتوي على كائنات متسلسلة إذا تم استخدام print -C ) متزامنةنعم ( $(...) و ${<مسافة>...; })نعم (إذا كان النظام يدعم /dev/fd/ n )نعمنعم (ودعم بروتوكول SCTP، للعميل فقط)غير متوفر [ رقم 19 ]
pdkshبايتات متزامنةنعملانعملاغير متوفر [ رقم 19 ]
zshبايتات متزامنةنعمنعمنعمنعم (العميل والخادم، ولكن عبر بروتوكول TCP فقط)غير متوفر [ رقم 19 ]
رمادبايتات متزامنةنعملانعملاغير متوفر [ رقم 19 ]
الحزب الشيوعي الصينيلالالالالالا
COMMAND.COMملفات مؤقتة متسلسلة نصيةلالاجزئي (فقط في وضع تعدد المهام DR-DOS عبر الأمر COMMAND.COM /T )لالا
OS/2 CMD.EXEنص متزامنلالا؟لالا
ويندوز CMD.EXEنص متزامننعم (عبر الأمر FOR /F )لانعم (علامة اقتباس معكوسة: ` في FOR /F usebackq )لالا
4DOSملفات مؤقتة متسلسلة نصيةنعم (عبر الأمر FOR /F )؟جزئي (عبر %@EXECSTR[] و %@EXEC[] ، أو عبر SET /M و ESET /M و UNSET /M و %@MASTER[...] )لانعم (عبر KEYSTACK و KSTACK ) [ 65 ]
4OS2نص متزامن؟؟؟لانعم (عبر KEYSTACK )
TCC (سابقًا 4NT)نص متزامننعم (عبر الأمر FOR /F )؟جزئي (عبر %@EXECSTR[] و %@EXEC[] )نعم (عبر FTP و TFTP و FTPS و SFTP و HTTP و HTTPS و IFTP ، من جانب العميل فقط)نعم (عبر KEYSTACK )
باور شيلالكائنات المتزامنةنعملانعمنعم؟
rcنص متزامننعمنعم (عبر: <{cmd } إذا كان النظام يدعم /dev/fd/ n )نعملا؟
بينشيلغير مدعوم؟؟؟نعم؟
VMS DCLنص (عبر أمر PIPE )نعملانعم (التفريخ)نعم (خادم TCP فقط)لا
سمكةبايتات متزامنةنعم ( ... )لا (مكسور) [ 66 ]لالاغير متوفر [ رقم 19 ]

تكديس ضغطات المفاتيح

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

ميزات الأمان

صدَفَةطلب كلمة المرور الآمنةكلمات مرور الملفات/المجلداتإذن التنفيذمجموعة فرعية مقيدة من الصدفةمجموعة البيانات الآمنة
بورن شيلعبر stty [ nb 20 ]؟غير متوفر [ رقم 21 ]نعملا
واجهة سطر أوامر POSIXعبر stty [ nb 20 ]؟غير متوفر [ رقم 21 ]لالا
باش (الإصدار 4.0)read -s؟غير متوفر [ رقم 21 ]نعم [ 67 ]لا
cshعبر stty [ nb 20 ]؟غير متوفر [ رقم 21 ]نعملا
tcshعبر stty [ nb 20 ]؟غير متوفر [ رقم 21 ]نعملا
غلاف هاميلتون سيلالالالالا
Scshعبر stty [ nb 20 ]؟غير متوفر [ رقم 21 ]لالا
ksh (ksh93t+)عبر stty [ nb 20 ]؟غير متوفر [ رقم 21 ]نعملا
pdkshعبر stty [ nb 20 ]؟غير متوفر [ رقم 21 ]نعملا
zshread -s؟غير متوفر [ رقم 21 ] [ رقم 22 ]نعملا
رمادعبر stty [ nb 20 ]؟غير متوفر [ رقم 21 ]لالا
الحزب الشيوعي الصينيلالالالالا
COMMAND.COMجزئي (فقط في نظام DR-DOS، ويطلب كلمة المرور إذا كان الملف/المجلد محميًا)جزئي (فقط تحت نظام DR-DOS عبر \dirname;dirpwd\filename;filepwdبناء الجملة) [ nb 23 ]جزئي (فقط في ظل نظام DR-DOS، إذا كانت الملفات محمية بكلمة مرور لقراءة و/أو تنفيذ الأذونات) [ nb 24 ]لالا
OS/2 CMD.EXEلالالالالا
ويندوز CMD.EXEلالالالالا
4DOSنعم (عبر INPUT /Pأو INKEY /P) [ ملاحظة 25 ]جزئي (فقط تحت نظام DR-DOS عبر \dirname;;dirpwd\filename;;filepwdبناء الجملة) [ nb 23 ]جزئي (فقط في ظل نظام DR-DOS، إذا كانت الملفات محمية بكلمة مرور لقراءة و/أو تنفيذ الأذونات) [ nb 24 ]لالا
4OS2؟لالالالا
TCC (سابقًا 4NT)نعم (عبر INPUT /P، INKEY /Pأو QUERYBOX /P) [ ملاحظة 25 ]لالالالا
باور شيلنعم [ ملاحظة 26 ]لالا [ ملاحظة 27 ]نعم [ ملاحظة 28 ]نعم [ 68 ]
rcعبر stty [ nb 20 ]؟غير متوفر [ رقم 21 ]لالا
بينشيل؟؟؟؟؟
VMS DCLنعملانعمنعملا
سمكةread -s؟غير متوفر [ رقم 21 ] [ رقم 22 ]لا؟

موجه آمن

تتطلب بعض البرامج النصية (Shell Scripts) استعلام المستخدم عن معلومات حساسة مثل كلمات المرور ، والمفاتيح الرقمية الخاصة، ورموز التعريف الشخصية (PIN) ، أو غيرها من المعلومات السرية. يجب عدم عرض المدخلات الحساسة على الشاشة/جهاز الإدخال حيث يمكن للأشخاص غير المصرح لهم الاطلاع عليها. كما يجب تجنب تمثيل المعلومات الحساسة في الذاكرة كنص عادي، لأن ذلك قد يسمح باختراقها، على سبيل المثال، من خلال ملفات التبديل، وملفات تفريغ الذاكرة الأساسية، وما إلى ذلك. [ 69 ]

توفر واجهات سطر الأوامر bash وzsh وPowerShell هذه الميزة بشكلٍ خاص. [ 70 ] [ 71 ] أما واجهات سطر الأوامر التي لا توفر هذه الميزة بشكلٍ خاص، فقد تتمكن من تعطيل خاصية عرض الأحرف المدخلة بطرقٍ أخرى. يمكن لواجهات سطر الأوامر التي تعمل على نظام تشغيل Unix/Linux استخدام الأمر stty الخارجي لتفعيل/إيقاف عرض الأحرف المدخلة. [ 72 ] بالإضافة إلى عدم عرض الأحرف، يقوم خيار PowerShell أيضًا بتشفير الأحرف المدخلة حرفًا حرفًا أثناء عملية الإدخال، مما يضمن عدم تمثيل السلسلة النصية غير مشفرة في الذاكرة، حيث يمكن اختراقها من خلال عمليات تفريغ الذاكرة، والمسح الضوئي، والنسخ، وما إلى ذلك.-AsSecureString

إذن التنفيذ

تُعرّف بعض أنظمة التشغيل إذن التنفيذ الذي يمكن منحه للمستخدمين/المجموعات لملف ما عندما يدعم نظام الملفات نفسه ذلك.

في أنظمة يونكس، تتحكم صلاحية التنفيذ في إمكانية استدعاء الملف كبرنامج، وهي تنطبق على كلٍ من الملفات التنفيذية والنصوص البرمجية. وبما أن هذه الصلاحية تُفرض في مُحمِّل البرامج ، فلا يُلزم البرنامج المُستدعي أو البرنامج المُستدعى بفرض صلاحية التنفيذ - وينطبق هذا أيضًا على الصدف وبرامج التفسير الأخرى. هذا السلوك مُحددٌ بواسطة مكتبة POSIX C المُستخدمة للتفاعل مع النواة. تُحدد POSIX أن مجموعة الدوال ستفشل مع رمز الخطأ EACCESS (تم رفض الإذن) إذا رفض الملف إذن التنفيذ (انظر : مرجع واجهات النظام، مواصفات يونكس الموحدة ، الإصدار 5 من مجموعة Open Group ). execexecve  

لا تُمنح صلاحية التنفيذ إلا عند تشغيل البرنامج النصي مباشرةً. أما إذا تم استدعاء برنامج نصي كوسيط في الصدفة المُفسِّرة، فسيتم تنفيذه بغض النظر عما إذا كان المستخدم يملك صلاحية التنفيذ لهذا البرنامج النصي أم لا.

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

مجموعة فرعية مقيدة من الصدفة

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

تم تقييم وضع مقيد لمواصفات POSIX الخاصة بالأصداف، لكنه لم يُدرج. [ 73 ] ومع ذلك، تدعم معظم أصداف Linux/Unix وضعًا كهذا حيث يتم تعطيل العديد من الأوامر المدمجة ولا يمكن استدعاء سوى الأوامر الخارجية من دليل معين.

يدعم PowerShell الأوضاع المقيدة من خلال ملفات تكوين الجلسة أو تكوينات الجلسة. يمكن لملف تكوين الجلسة تحديد أوامر cmdlets المرئية (المتاحة)، والأسماء المستعارة، والدوال، وموفري المسارات، وغير ذلك. [ 74 ]

مجموعة البيانات الآمنة

قد تُشكّل البرامج النصية التي تستدعي برامج نصية أخرى خطرًا أمنيًا، إذ يُمكنها تنفيذ تعليمات برمجية خارجية ضمن صلاحيات المستخدم الذي شغّل البرنامج النصي الأصلي. عادةً ما تُصمّم البرامج النصية بحيث تقتصر على البرامج النصية من مواقع آمنة معروفة؛ ولكن في بعض الحالات، مثل توفير طريقة للمستخدم لضبط بيئة التشغيل أو تحميل رسائل مترجمة، قد يحتاج البرنامج النصي إلى تضمين برامج نصية/ملفات أخرى. [ 75 ] إحدى طرق معالجة هذا الخطر هي أن يُوفّر نظام التشغيل مجموعة فرعية آمنة من الأوامر التي يُمكن تنفيذها بواسطة برنامج نصي مُضمّن.

ملحوظات

  1. منذ منتصف التسعينيات.
  2. إذا تم تجميعها باستخدام -DACCT.
  3. مكون MS-DOS وWindows - مشمول بترخيص ساري المفعول لنظام MS-DOS أو Microsoft Windows.
  4. مكون نظام التشغيل OS/2 – مشمول بترخيص ساري المفعول لنظام التشغيل OS/2.
  5. تم تمكين ملحقات الأوامر، أو "CMD /X".
  6. مكون ويندوز – مشمول بترخيص ساري المفعول لنظام التشغيل مايكروسوفت ويندوز.
  7. يتم تثبيت Microsoft PowerShell افتراضيًا على نظام التشغيل Windows 7 والإصدارات الأحدث. وهو برنامج اختياري للتنزيل لمستخدمي Windows Vista أو Windows XP.
  8. 1 2 3 الإصدارات الحالية من يورغ شيلينغ.
  9. سيؤدي الضغط على Alt-Shift-8 أو Alt-* إلى توسيع القائمة الكاملة لأسماء الملفات المطابقة.
  10. متوفر من خلالإضافة DOSKEY .
  11. متوفر في DR-DOS من خلال HISTORY .
  12. متوفر أيضًا من خلالإضافة DOSKEY .
  13. متوفر أيضًا بنظام DR-DOS من خلال HISTORY .
  14. يحتوي TCC على وظائف مطالبة خاصة بـ نعم، لا، إلغاء، إغلاق، إعادة المحاولة.
  15. 1 2 3 يتم التعامل معها بواسطة rio أو GNU readline أو editline أو vrl .
  16. صدفة السمكة عبارة عن سطح إدخال/إخراج تفاعلي قائم على الأحرف.
  17. غير متوفر كأمر مدمج في سطر الأوامر.يتوفر الأمر الخارجي FINDSTR /R في معظم إصدارات ويندوز.
  18. يستفيد PowerShell من محرك التعبيرات النمطية الكامل لـ .NET والذي يتميز بالتقاطات المسماة، والنظر إلى الأمام/الخلف بدون عرض، والبحث الجشع/غير الجشع، وفئات الأحرف، وحساب المستويات، وما إلى ذلك.
  19. 1 2 3 4 5 6 7 8 9 10 11 يمكن استخدام xautomation و xdotool لإنشاء ضغطات المفاتيح تحت نظام X Window ؛ أو يمكن تشغيل برنامج في طرفية زائفة للتحكم فيه (كما هو الحال مع أداة expect ).
  20. ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ يمكن للصدفة استخدام أداة stty لإيقاف عرض الأحرف المكتوبة على الشاشة. يتطلب هذا عدة خطوات: ١. قراءة حالة العرض الحالية، ٢. إيقاف العرض، ٣. قراءة المدخلات، ٤. إعادة حالة العرض إلى حالتها الأصلية.
  21. ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ١٠ ١١ ١٢ يتم فرض إذن التنفيذ بواسطة برنامج منفصل، وهو مُحمِّل البرامج، وذلك برفض استدعاء المُفسِّر (ربما يكون سطر أوامر) المُحدَّد بواسطة سطر التجزئة في البرنامج النصي . لا يفرض المُفسِّر إذن التنفيذ إذا تم استدعاؤه مباشرةً كما يفعل مُحمِّل البرامج، مع تمرير الملف كوسيط؛ فهذا يتطلب إذن قراءة فقط، كما هو الحال عند تمرير الملف كمدخل إلى المُفسِّر، وفي هذه الحالة لا يستطيع المُفسِّر رؤية إذن التنفيذ.
  22. 1 2 كما أن واجهات zsh و fish تحترم إذن التنفيذ لإكمال الأوامر.
  23. في نظام DR-DOS، يُستخدم الفاصل المنقوط كفاصل لكلمات مرور الملفات والمجلدات. ويدعم نظام 4DOS هذا أيضًا طالما أن الأمر لا يدعم قوائم التضمين. في نظام 4DOS، يجب مضاعفة فاصل كلمات المرور لجميع الأوامر التي تدعم قوائم التضمين لتمييز كلمات المرور عن قوائم التضمين. أما الأوامر التي لا تدعم قوائم التضمين، فتقبل كلا الشكلين. يدعم نظام DR-DOS الإصدار 7.02 والإصدارات الأحدث، بشكل اختياري، استخدام الفاصل المنقوط المزدوج أيضًا، بحيث يعمل الفاصل المنقوط المزدوج في كل من COMMAND.COM و4DOS بغض النظر عن الأمر المُنفذ.
  24. يدعم نظام DR -DOS كلمات مرور للملفات للقراءة والكتابة والحذف، بالإضافة إلى إمكانية منحها صلاحيات التنفيذ. لا تكون الملفات محمية افتراضيًا، ولكن يمكن ضبط النظام بحيث تتطلب بعض البرامج النصية كلمة مرور للقراءة.
  25. 1 2INPUT /P ويعيدINKEY /Pعلامات النجمة لكل حرف مكتوب.
  26. Read-Host -AsSecureString يقرأ سلسلة من الأحرف من جهاز الإدخال إلى سلسلة مشفرة، حرفًا واحدًا في كل مرة، مما يضمن عدم وجود صورة ذاكرة للنص الواضح يمكن استخلاصها من مسح الذاكرة، أو من تفريغات الأعطال، أو تفريغات الذاكرة، أو ملفات الترحيل، أو ملفات السجل أو ما شابه ذلك.
  27. ترتبط ملفات PowerShell النصية ( ملفات .ps1 ) افتراضيًا بمحرر المفكرة، وليس بمحرك تنفيذ PowerShell. سيؤدي استدعاء ملف .ps1 إلى تشغيل المفكرة بدلاً من تنفيذ البرنامج النصي.
  28. يمكن لبرامج بدء التشغيل لكل جهاز كمبيوتر/مستخدم استيراد الوحدات النمطية وعرض مجموعة فرعية من الأوامر/الوظائف المتاحة في الوحدات النمطية.

مراجع

  1. يتوفر إصدار مستقل عن المنصة، مبني على شفرة المصدر الأصلية التاريخية لنظام يونكس الإصدار السابع،من جيف كولير
  2. يتوفر الإصدار التاريخي من نظام التشغيل UNIX V7 بموجب ترخيص على غرار BSD. تمت أرشفته في 2011-08-06 على موقع Wayback Machine من خلال جمعية تراث Unix وغيرها.
  3. يتوفر إصدار مستقل عن المنصة يعتمد على شفرة المصدر SVr4/Solaris منيورغ شيلينغ
  4. فيريل، جون، "الفصل 2. الصدفة الافتراضية" ، دليل البدء السريع لنظام FreeBSD لمستخدمي لينكس ، مشروع توثيق FreeBSD ، تم الاطلاع عليه بتاريخ 24 يوليو 2015
  5. "SchilliX-ON / SchilliX-ON Mercurial / [ b1d9a2 ] /usr/src/cmd/sh" . Sourceforge.net . تم الاطلاع عليه بتاريخ 2015-07-02 .
  6. معهد مهندسي الكهرباء والإلكترونيات ومجموعة Open Group (2008). معيار IEEE 1003.1 لتكنولوجيا المعلومات - واجهة نظام التشغيل المحمولة (POSIX): Shell والأدوات المساعدة، الإصدار 7 .
  7. كجزء من معيار IEEE Std.1003.2-1992 (POSIX.2)؛ تم دمجه في معيار IEEE Std.1003.1 مع مراجعة عام 2001.
  8. فوكس، برايان (7 يونيو 1989). تاور الابن، ليونارد هـ. (محرر). "باش في مرحلة تجريبية!" . مجموعة الأخبار : gnu.announce . يوزنت: 8906080235.AA01983@wheat-chex.ai.mit.edu . تاريخ الاسترجاع: 28 أكتوبر 2010 .  
  9. كوبر، مندل، "الفصل 37.3.2. باش، الإصدار 4.2" ، دليل برمجة باش المتقدمة ، مشروع توثيق لينكس ، تم الاطلاع عليه بتاريخ 30 أبريل 2015"يدعم Bash الآن رمز الهروب Unicode \u و \U."
  10. جرير، كين (3 أكتوبر 1983). "واجهة سطر أوامر C مع التعرف على الأوامر وأسماء الملفات وإكمالها" . مجموعة الأخبار : net.sources . تاريخ الاسترجاع: 29 ديسمبر 2010 . 
  11. "دليل البدء السريع لنظام FreeBSD لمستخدمي Linux®" . بوابة توثيق FreeBSD . تم الاطلاع عليه بتاريخ 4 فبراير 2024 .
  12. سوسمان، آن (26 ديسمبر 1988). "واجهة هاميلتون سي شيل تُسرّع تطوير تطبيقات نظام التشغيل OS/2" (ملف PDF) . مجلة PC Week (26 ديسمبر 1988 - 2 يناير 1989): 37. تاريخ الاسترجاع: 22 نوفمبر 2010 .
  13. غوميز، رون (9 يونيو 1983). "جدول مؤتمر تورنتو USENIX (مبدئي)" . مجموعة الأخبار : net.usenix . تاريخ الاسترجاع: 29 ديسمبر 2010 . 
  14. هاريس، جاي (10-10-1983). "سؤال حول csh" . مجموعة الأخبار : net.flame . تم الاسترجاع في 29-12-2010 . 
  15. 1 2 ksh93(1) صفحة الدليل
  16. 1 2 الصدفة الافتراضية في OpenBSD هي ksh (pdksh).
  17. "GhostBSD 26.1-R15.0p2 متوفر الآن" . أخبار GhostBSD . تم الاطلاع عليه بتاريخ 19 أبريل 2026 .
  18. محرر سطر الأوامر zsh قابل للتكوين بالكامل ويمكنه السماح بدعم الماوس بطرق مختلفة مثل استخدام mouse.zsh الخاص بـ Stéphane Chazelas .
  19. صفحة دليل zsh(1) والصفحات الفرعية
  20. صفحة دليل zshbuiltins(1)
  21. ليفيفري، فنسنت (11 فبراير 2015). "معرّفات الملفات متعددة الأرقام" . قائمة بريدية لمستخدمي zsh . تم الاطلاع بتاريخ 23 ديسمبر 2021 .
  22. "#782228 - لا يدعم busybox sh الأحرف متعددة البايت في معالجة السلاسل النصية - سجلات تقارير أخطاء دبيان" . Bugs.debian.org. 2015-04-09 . تم الاطلاع عليه بتاريخ 2015-07-02 .
  23. "قاموس أوامر HP OpenVMS DCL" . مؤرشف من الأصل بتاريخ 25-03-2007 . تم الاطلاع عليه بتاريخ 23-03-2009 .
  24. كيناه، لورانس ج. (1984). مكونات VAX/VMS الداخلية وهياكل البيانات . دار النشر الرقمية. ISBN 978-3-528-02410-9.
  25. لارابيل، مايكل (23 مارس 2021). "نقل حقوق الطبع والنشر لبرنامج Plan 9 إلى مؤسسة، وإصدار الكود المرخص من معهد ماساتشوستس للتكنولوجيا" . فورونيكس . تم الاطلاع عليه بتاريخ 28 مارس 2021 .
  26. ليليانكرانتز، أكسل (17-05-2005). "السمكة - الصدفة التفاعلية الودودة" . تم الاسترجاع في 08-04-2013 .
  27. سولر، جيريمي (15 نوفمبر 2015). "d79c8f511573fb7710abc63b4236a40022914520" . تم الاطلاع عليه بتاريخ 3 أغسطس 2019 .
  28. " [ Z Shell ] نظام الإكمال" . Zsh.sourceforge.io . تم ​​الاطلاع عليه بتاريخ 24-02-2015 .
  29. ينطبق هذا فقط على الكلمات المحجوزة والخصائص النحوية الأخرى.
  30. على سبيل المثال عبر طرف ثالث مثل zsh-autosuggestions
  31. لا يدعم zsh تمييز الصيغة، ولكن يوجد مشروع تابع لجهة خارجية يوفر هذه الإمكانية كإضافة: zsh-syntax-highlighting
  32. بول، ماتياس ر. (2 أكتوبر 1997) [29 سبتمبر 1997]. "تحديث Caldera OpenDOS 7.01/7.02 ألفا 3 IBMBIO.COM - README.TXT وBOOT.TXT - وصف موجز لكيفية تشغيل OpenDOS" . مؤرشف من الأصل في 4 أكتوبر 2003. تم الاطلاع عليه في 29 مارس 2009 .
  33. 1 2 3 4 5 شيرك، جيسون (2018-02-15). "PSReadLine: تطبيق readline مستوحى من bash لـ PowerShell" - عبر GitHub.
  34. "Windows PowerShell 5.0" . مؤرشف من الأصل بتاريخ 17 سبتمبر 2016. تم الاطلاع عليه بتاريخ 8 سبتمبر 2016 .
  35. 1 2 3 4 5 "بيئة البرمجة النصية المتكاملة لـ Windows PowerShell (ISE)" . مايكروسوفت تكنيت . تم الاسترجاع في 12 سبتمبر 2015 .
  36. "Get-ChildItemColor" . GitHub . 2022-03-18.
  37. sdwheeler. "Write-Host (Microsoft.PowerShell.Utility) - PowerShell" . docs.microsoft.com . تم الاطلاع عليه بتاريخ 18 يناير 2022 .
  38. يسمح كل من Push-Location (مع الاسم المستعارpushd) و Pop-Location (مع الاسم المستعارpopd) بدفع أنواع متعددة من المواقع (دلائل أنظمة الملفات، والوحدات التنظيمية لـ Active Directory ، وعقد سجل Windows وما إلى ذلك) إلى مكدسات المواقع وسحبها منها.
  39. تتيح الدالة $host.ui.PromptForChoice عرض قائمة منسدلة للاختيارات. تعمل هذه القائمة من مهام الخلفية وكذلك من الجلسات البعيدة، حيث تعرضها على وحدة تحكم الجلسة المتحكمة.
  40. يقوم الأمر cmdlet Write-Progress بكتابة شريط تقدم يمكنه الإشارة إلى النسبة المئوية والثواني المتبقية وما إلى ذلك. تعمل رسائل شريط التقدم من مهام الخلفية أو الجلسات البعيدة بالإضافة إلى البرامج النصية التفاعلية، أي يتم عرض شريط التقدم على وحدة تحكم الجلسة المتحكمة، وليس كجزء من الإخراج العادي.
  41. يقوم الأمر cmdlet Show -Command بفحص تعريف الأمر ويفتح نافذة تفاعلية تحتوي على حقل إدخال مُسمى لكل مُعامل/مفتاح تبديل
  42. 1 2 "fish: Documentation" . قسم إكمال علامة التبويب . تم الاسترجاع في 10-01-2016 .
  43. "set_color - تعيين لون الطرفية — وثائق fish-shell 3.1.2" . fishshell.com . مؤرشف من الأصل بتاريخ 17 فبراير 2020. تم الاطلاع عليه بتاريخ 23 فبراير 2021 .
  44. "abbr - إدارة اختصارات الأسماك - وثائق fish-shell 3.1.2" . fishshell.com . تم الاطلاع عليه بتاريخ 23 فبراير 2021 .
  45. "zsh: 20. نظام الإكمال" . Zsh.sourceforge.io. 2013-03-06 . تم الاطلاع عليه بتاريخ 2013-08-18 .
  46. sdwheeler. "ما الجديد في بيئة PowerShell 5.0 المتكاملة - PowerShell" . docs.microsoft.com . تم الاطلاع عليه بتاريخ 25 يوليو 2021 .
  47. "GitHub - marlonrichert/zsh-autocomplete: 🤖 إكمال تلقائي فوري لـ Zsh. بحث غير متزامن أثناء الكتابة" . GitHub . تم الاطلاع عليه بتاريخ 25 يوليو 2021 .
  48. "الاستخدام التفاعلي - وثائق fish-shell 3.3.1" . fishshell.com . تم الاطلاع عليه بتاريخ 25-07-2021 .
  49. هان، هارلي (2009). دليل هارلي هان لنظامي يونكس ولينكس . بوسطن: ماكجرو هيل للتعليم العالي. ISBN 978-0-07-313361-4. OCLC 184828059 . 
  50. نظام التشغيل Concurrent DOS 386 - نظام تشغيل متعدد المستخدمين/متعدد المهام - دليل المستخدم (PDF) . بحث رقمي .
  51. "pv(1): مراقبة تقدم البيانات عبر الأنبوب - صفحة دليل لينكس" . Linux.die.net . تم الاطلاع عليه بتاريخ 24-02-2015 .
  52. "fish: Tutorial" . fishshell.com . تم الاطلاع عليه بتاريخ 21-10-2022 .
  53. "zsh-users/zsh-syntax-highlighting: تمييز بناء الجملة على غرار Fish shell لـ Zsh" . GitHub . تم الاسترجاع في 18 أغسطس 2013 .
  54. sdwheeler. "وحدة PSReadLine - PowerShell" . learn.microsoft.com . تم الاطلاع عليه بتاريخ 26-04-2023 .
  55. "أنواع أشجار الدردار" . مؤرشف من الأصل بتاريخ 10-03-2010 . تم الاطلاع عليه بتاريخ 15-12-2014 .
  56. "تعيين متغير البيئة - موجه أوامر ويندوز" . SS64.com . تم الاطلاع عليه بتاريخ 24-02-2015 .
  57. "كيفية المرور على عناصر المصفوفة دفعة واحدة؟" . Stack Overflow . تم الاطلاع عليه بتاريخ 24-02-2015 .
  58. تُعرّف فئة System.Math في .NETالدوال الرياضية التي يمكن استخدامها من خلال الاختصار [Math] ، على سبيل المثال [Math]::Sin لدالة الجيب .
  59. "الحصول على إغلاق باستخدام GetNewClosure" . devblogs.microsoft.com . 27-03-2009 . تم الاطلاع عليه بتاريخ 12-09-2022 .
  60. "string - معالجة السلاسل النصية — وثائق fish-shell 3.1.2" . fishshell.com . تم الاطلاع عليه بتاريخ 23 فبراير 2021 .
  61. مرجع لغة هاميلتون سي شل: استخدام الأحرف البديلة ومطابقة الأنماط ، مختبرات هاميلتون ، تم الاطلاع عليه بتاريخ 29-10-2013 ، ... دليل غير محدد: مطابقة أي عدد من مستويات الدليل - صفر أو أكثر - مهما تطلب الأمر لجعل بقية النمط متطابقًا.
  62. 1 2 سيباخ، بيتر (21-11-2008). مقدمة في كتابة البرامج النصية المحمولة: من المبتدئ إلى المحترف . صوت خبير في المصادر المفتوحة. أبريس (نُشر عام 2008). ص 149. ISBN  9781430210436تم الاطلاع عليه بتاريخ 17-09-2014 . يتوفر توسيع Brace في ksh93 و pdksh و bash و zsh.
  63. يوفر Zsh مجموعة متنوعة من خيارات التجميع .
  64. sdwheeler. "حول عوامل التشغيل - PowerShell" . docs.microsoft.com . تم الاطلاع عليه بتاريخ 18 يناير 2022 .
  65. براذرز، هاردين؛ راوسون، توم ؛ كون، ريكس سي .؛ بول، ماتياس ر.؛ داي، تشارلز إي.؛ جورجيف، لوتشيزار آي. (27-02-2002). المساعدة عبر الإنترنت لنظام 4DOS 8.00 .
  66. "إيجاد طريقة لجعل الأمر 'psub --fifo' آمنًا من حالات التعطل · المشكلة رقم 1040 · fish-shell/fish-shell" . GitHub .
  67. "دليل مرجعي لـ Bash: الصدفة المقيدة" . Gnu.org. 2010-12-28 . تم الاطلاع عليه بتاريخ 2013-08-18 .
  68. "حول أقسام البيانات" . Technet.microsoft.com . تم الاطلاع عليه بتاريخ 24-02-2015 .
  69. بروفوس، نيلز. "تشفير الذاكرة الافتراضية" . مركز تكامل تكنولوجيا المعلومات، جامعة ميشيغان . تم الاطلاع عليه بتاريخ 20 ديسمبر 2012 .
  70. "bash - GNU Bourne-Again SHell" . read -s الوضع الصامت. إذا كان الإدخال قادمًا من طرفية، فلن يتم عرض الأحرف.
  71. "استخدام الأمر Read-Host" . بإضافة المعامل -assecurestring، يمكنك إخفاء البيانات المُدخلة في موجه الأوامر.
  72. "أمر لينكس/يونكس: stty" . Linux.about.com. مؤرشف من الأصل بتاريخ 25-02-2015 . تم الاطلاع عليه بتاريخ 24-02-2015 .
  73. "man sh - shell, the standard command language interpreter / posix" . Pwet.fr. مؤرشف من الأصل بتاريخ 21-12-2014 . تم الاطلاع عليه بتاريخ 18-08-2013 .
  74. "New-PSSessionConfigurationFile" . Technet.microsoft.com . تم الاطلاع عليه بتاريخ 18-08-2013 .
  75. ألبينغ، كارل؛ فوسن، جيه بي؛ نيوهام، كاميرون (2007). كتاب طبخ باش ( الطبعة الأولى). سيباستوبول، كاليفورنيا، الولايات المتحدة الأمريكية: أورايلي ميديا . ISBN  978-0-596-52678-8[...] ليس مجرد قائمة سلبية من المتغيرات المُهيأة، بل يمكنه تشغيل أوامر أخرى (مثل cat) واستخدام عبارات if لتغيير خياراته. حتى أنه ينتهي بعرض رسالة. لذا ، توخَّ الحذر عند استدعاء أي شيء، فقد يُفتح ذلك ثغرة أمنية في برنامجك النصي.