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

تسرد هذه المقالة الجوانب المتشابهة لأغلفة أنظمة التشغيل البارزة .
الخصائص العامة
| صدَفَة | البيئة المعتادة | عادة ما يتم استدعاؤه | قدَّم | واجهة تسجيل الدخول الافتراضية في | غلاف البرنامج النصي الافتراضي في | رخصة | توافر شفرة المصدر | واجهة المستخدم | دعم الماوس | دعم يونيكود | دعم معيار ISO 8601 | إعادة توجيه البث | قابلية التكوين | برامج بدء التشغيل/إيقاف التشغيل | نصوص الدفعات | قطع الأشجار | متوفر كملف تنفيذي مستقل مرتبط بشكل ثابت. | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| قذيفة طومسون | يونكس | ش | 1971 | غير متوفر | يونكس | يونكس | غير متوفر | نعم | واجهة سطر الأوامر النصية | لا | لا | غير متوفر | نعم | غير متوفر | غير متوفر | غير متوفر | غير متوفر | غير متوفر | غير متوفر |
| نسخة بورن شيل لعام 1977 | الطبعة السابعة. يونكس | ش | 1977 | نعم [ 1 ] | الطبعة السابعة. يونكس | الطبعة السابعة من يونكس ، | ملكية خاصة [ 2 ] | نعم | واجهة سطر الأوامر النصية | لا | لا | غير متوفر | نعم | نعم ( وظائف عشوائية ) | نعم (عبر المتغيرات والخيارات) | نعم ( .profile ) | نعم (ميزة في نظام يونكس) | لا | نعم |
| الإصدار الحالي من بورن شيل | أنظمة يونكس المختلفة | ش | 1977 | نعم [ 3 ] | SunOS-5.x، FreeBSD [ 4 ] | SunOS-5.x | CDDL [ 5 ] | نعم | واجهة سطر الأوامر النصية | لا | نعم [ ملاحظة 1 ] | غير متوفر | نعم | نعم ( وظائف عشوائية ) | نعم (عبر المتغيرات والخيارات) | نعم ( .profile ) | نعم (ميزة في نظام يونكس) | نعم [ ملاحظة 2 ] | نعم |
| غلاف POSIX [ 6 ] | بوسيكس | ش | 1992 [ 7 ] | غير متوفر | غير متوفر | بوسيكس | غير متوفر | غير متوفر | واجهة سطر الأوامر النصية | لا | نعم، إذا تم استخدامه بواسطة اللغة المُهيأة | غير متوفر | نعم | نعم ( وظائف عشوائية ) | نعم (عبر المتغيرات والخيارات) | غير محدد ( تم إعطاء ملف .profile كمثال) | نعم (ميزة في نظام يونكس) | نعم | غير متوفر |
| باش (الإصدار 4) | بوسيكس | باش، ش | 1989 [ 8 ] | نعم | جنو ، لينكس (الافتراضي للمستخدم الجذر)، ماك أو إس 10.3–10.14 | جنو ، لينكس ، هايكو ، ماك أو إس 10.3–10.14 | رخصة جنو العمومية | نعم | واجهة سطر الأوامر النصية | لا | نعم [ 9 ] | نعم ( دالة printf مدمجة) | نعم | نعم ( وظائف عشوائية ) | نعم (عبر المتغيرات والخيارات) | نعم ( /etc/profile ، .bash_profile ، .bash_login ، .profile ، .bashrc ) | نعم (ميزة في نظام يونكس) | نعم | نعم |
| csh | بوسيكس | csh | 1978 | نعم | نظام التشغيل SunOS | ؟ | بي إس دي | نعم | واجهة سطر الأوامر النصية | لا | لا | ؟ | نعم | نعم ( stdin ، stdout ، stdout+stderr ) | نعم (عبر المتغيرات والخيارات) | نعم ( ~/.cshrc ، ~/.login ، ~/.logout ) | نعم (ميزة في نظام يونكس) | نعم | نعم |
| tcsh | بوسيكس | tcsh, csh | 1983 [ 10 ] | نعم | FreeBSD (النظام الافتراضي السابق للمستخدم الجذر)، [ 11 ] المعروف سابقًا باسم Mac OS X | ؟ | بي إس دي | نعم | واجهة سطر الأوامر النصية | لا | نعم | ؟ | نعم | نعم ( stdin ، stdout ، stdout+stderr ) | نعم (عبر المتغيرات والخيارات) | نعم ( /etc/csh.cshrc ، /etc/csh.login ، ~/.tcshrc ، ~/.cshrc ، ~/.history ، ~/.login ، ~/.cshdirs ) | نعم (ميزة في نظام يونكس) | نعم | نعم |
| غلاف هاميلتون سي | Win32 ، OS/2 | csh | 1988 [ 12 ] | نعم (إصدار نظام التشغيل OS/2 لم يعد مدعومًا) | خياري | خياري | ملكية خاصة | لا | واجهة سطر الأوامر النصية | لا | لا | نعم (عامل الطابع الزمني -t) | نعم | نعم ( stdin ، stdout ، stdout+stderr ) | نعم (عبر المتغيرات والخيارات) | نعم (عبر login.csh و startup.csh و logout.csh) | نعم (خيار سطر الأوامر) | نعم | نعم |
| Scsh | بوسيكس | scsh | 1994 | نعم | ؟ | ؟ | نمط بي إس دي | نعم | ؟ | ؟ | ؟ | ؟ | ؟ | نعم | ؟ | ؟ | ؟ | ؟ | نعم |
| ksh (ksh93t+) | بوسيكس | كش | 1983 [ 13 ] [ 14 ] | نعم | AIX ، HP-UX | أوبن سولاريس | رخصة عامة مشتركة | نعم | واجهة سطر الأوامر النصية | لا | نعم | نعم ( دالة printf المدمجة مع %(%F)T [ 15 ] ) | نعم | نعم ( fds حتى 9) [ 15 ] | نعم (عبر المتغيرات والخيارات) | نعم ( ملف تعريف النظام وملف تعريف المستخدم وملف kshrc ) | نعم (ميزة في نظام يونكس) | نعم | نعم |
| pdksh | بوسيكس | ksh, sh | 1989؟ | نعم | OpenBSD [ 16 ] | OpenBSD [ 16 ] | الملكية العامة | نعم | واجهة سطر الأوامر النصية | لا | لا | غير متوفر | نعم | نعم ( وظائف عشوائية ) | نعم (عبر المتغيرات والخيارات) | نعم ( /etc/profile , .profile ) | نعم (ميزة في نظام يونكس) | نعم | نعم |
| zsh | بوسيكس | zsh | 1990 | نعم | Deepin ، GoboLinux ، Grml ، macOS 10.15+، Kali 2020.4+، GhostBSD 26.1-R15.0p2+ [ 17 ] | Grml ، macOS 10.15+ | على طريقة معهد ماساتشوستس للتكنولوجيا | نعم | واجهة سطر الأوامر النصية | نعم، عبر رمز إضافي [ 18 ] | نعم | نعم (ميزات داخلية متنوعة تتعلق بالتاريخ، باستخدام تنسيق %F strftime [ 19 ] وخيار -i للدالة المدمجة fc [ 20 ] ) | نعم | نعم ( fds حتى 9) [ 21 ] | نعم (عبر المتغيرات، والخيارات، والوظائف، والأنماط، وما إلى ذلك). | نعم ( ملفات zshenv و zprofile و zshrc و zlogin و zlogout الخاصة بالنظام والمستخدم ) | نعم (ميزة في نظام يونكس) | نعم | نعم |
| رماد | بوسيكس | ش | 1989 | نعم | أنظمة Minix و BusyBox | أنظمة NetBSD و Minix و BusyBox | نمط بي إس دي | نعم | واجهة سطر الأوامر النصية | لا | جزئي (بالنسبة لـ BusyBox، مدعوم في تحرير سطر الأوامر، ولكن ليس في معالجة السلاسل النصية [ 22 ] ) | غير متوفر | نعم | نعم ( وظائف عشوائية ) | نعم (عبر المتغيرات والخيارات) | نعم ( /etc/profile , .profile ) | نعم (ميزة في نظام يونكس) | نعم | نعم |
| الحزب الشيوعي الصيني | CP/M ، MP/M | (الحزب الشيوعي الصيني) | 1976 (1974) | لا | CP/M (بدون تسجيل دخول)، MP/M | CP/M ، MP/M | برنامج مجاني (كان في الأصل برنامجًا احتكاريًا) | نعم (كانت في الأصل مغلقة المصدر) | واجهة سطر الأوامر النصية | لا | لا | لا | لا | لا | لا | نعم (تلقائيًا عبر $$$.SUB ) | جزئي (فقط عبر أمر SUBMIT خارجي لتحديث $$$.SUB ) | لا | نعم |
| COMMAND.COM | دوس | يأمر | 1980 | لا (تطبيقات من جهات خارجية، غير مرتبطة بمورد أو إصدار محدد لنظام التشغيل DOS، متوفرة) | دوس ، ويندوز 95 ، 98 ، SE ، ME | دوس ، ويندوز 95 ، 98 ، SE ، ME | خاص بالبائع، على سبيل المثال MS - EULA ، [ nb 3 ] أو BSD / GPL (نسخ مجانية) | لا (باستثناء OpenDOS و DR-DOS و PTS/DOS و FreeDOS) | واجهة سطر الأوامر النصية | لا | لا | لا (باستثناء نظام DR-DOS) | نعم (عبر الأمر con: أو CTTY con: ) | نعم ( stdin ، stdout ) | نعم (عبر معلمات بدء التشغيل ومتغيرات البيئة، يدعم DR-DOS أيضًا أمر التبديل الافتراضي للمستخدم DIR /C /R ) | نعم ( تشغيل ملف AUTOEXEC.BAT تلقائيًا للصدفة الرئيسية، أو بشكل صريح عبر خيارات بدء التشغيل /P أو /P:filename.bat أو /K ) | نعم (عبر أمر CALL أو خيارات بدء التشغيل /C و /K ) | لا | نعم |
| OS/2 CMD.EXE | نظام التشغيل OS/2 ، وeComStation ، وArcaOS | CMD | 1987 | لا | نظام التشغيل OS/2 ، وeComStation ، وArcaOS | نظام التشغيل OS/2 ، وeComStation ، وArcaOS | اتفاقية ترخيص المستخدم النهائي لشركة IBM [ رقم 4 ] | لا | واجهة سطر الأوامر النصية | لا | لا | لا | لا | نعم ( stdin ، stdout ، stderr ) | ؟ | جزئي (فقط عبر خيار بدء التشغيل /K ) | نعم (عبر أمر CALL أو خيارات بدء التشغيل /C و /K ) | لا | نعم |
| Windows CMD.EXE [ nb 5 ] | Win32 | CMD | 1993 | لا | ويندوز إن تي، 2000، إكس بي، سيرفر 2003، فيستا | ويندوز إن تي، 2000، إكس بي، سيرفر 2003، فيستا | MS - اتفاقية ترخيص المستخدم النهائي [ ملاحظة 6 ] | لا | واجهة سطر الأوامر النصية | لا | جزئي ( CHCP 65001 لـ UTF-8 ، ولكن لا تزال وسائط البرنامج مشفرة في صفحة الترميز المحلية) | لا | لا | نعم | نعم (عبر سجل النظام، ومعلمات بدء التشغيل، ومتغيرات البيئة) | نعم (تلقائيًا عبر سجل النظام، أو بشكل صريح عبر خيار بدء التشغيل /K ) | نعم (عبر أمر CALL أو خيارات بدء التشغيل /C و /K ) | لا | نعم |
| 4DOS ، NDOS | دوس ، ويندوز 95 ، 98 ، SE ، ME | 4DOS ، NDOS | 1989 (1986) | لا (غير مرتبط بمورد أو إصدار محدد لنظام التشغيل) | خياري | خياري | رخصة MIT ، مع بعض القيود | نعم | واجهة سطر أوامر نصية مع ملحقات واجهة المستخدم النصية | نعم (النوافذ المنبثقة، نظام المساعدة، المتغير الداخلي %_MOUSE ، الأمر INKEY /M ) | لا | نعم | نعم (عبر CTTY con: ، باستثناء أوامر DRAWBOX و DRAWLINE و DRAWVLINE و LIST و SCREEN و SCRPUT و SELECT و VSCRPUT وتلوين الملفات / الدلائل) | نعم ( stdin ، stdout ، stderr ، stdout+stderr ) | نعم (عبر ملف 4DOS.INI / NDOS.INI ، معلمات بدء التشغيل، متغيرات البيئة، أمر SETDOS ) | نعم (تشغيل تلقائي لملف \AUTOEXEC.BAT للصدفة الرئيسية، وملف 4START.BTM / 4START.BAT بالإضافة إلى ملف 4EXIT.BTM / 4EXIT.BAT لأي صدفة، أو بشكل صريح عبر خيارات بدء التشغيل /P أو /P:dir\filename.ext أو /K ) | نعم (عبر أمر CALL أو خيارات بدء التشغيل /C و /K ) | نعم | نعم |
| 4OS2 | نظام التشغيل OS/2 ، وeComStation ، وArcaOS | 4OS2 | 1992 | لا (غير مرتبط بإصدارات محددة من نظام التشغيل OS/2) | اختياري (ولكنه يأتي مع نظام التشغيل ArcaOS) | خياري | برامج مجانية | نعم | واجهة سطر الأوامر النصية | لا | لا | لا | لا | نعم ( stdin ، stdout ، stderr ، stdout+stderr ) | نعم (عبر ملف 4OS2.INI ، ومعلمات بدء التشغيل، ومتغيرات البيئة، وأمر SETDOS ) | نعم (تلقائيًا عبر ملفات 4START.CMD / 4START.BTM وكذلك 4EXIT.CMD / 4EXIT.BTM ، أو بشكل صريح عبر خيار /K startup.cmd ) | نعم (عبر أمر CALL أو خيارات بدء التشغيل /C و /K ) | نعم | ؟ |
| TCC (سابقًا 4NT) | Win32 | TCC | 1993 | لا (غير مرتبط بإصدارات محددة من نظام التشغيل NT) | خياري | خياري | برامج تجريبية | لا | واجهة سطر الأوامر النصية ( استخدم الأمر : واجهة المستخدم الرسومية ) | نعم (فأرة وحدة التحكم، النوافذ المنبثقة، نظام المساعدة، المتغيرات الداخلية %_XMOUSE و %_YMOUSE ، الأمر INKEY /M ) | نعم | نعم | لا | نعم ( stdin ، stdout ، stderr ، stdout+stderr ) | نعم (عبر سجل النظام، ملف TCMD.INI / 4NT.INI ، معلمات بدء التشغيل، متغيرات البيئة، أمر SETDOS ) | نعم (تلقائيًا عبر سجل النظام و TCSTART / 4START وكذلك TCEXIT / 4EXIT ، أو بشكل صريح عبر خيار بدء التشغيل /K ) | نعم (عبر أمر CALL أو خيارات بدء التشغيل /C و /K ) | نعم | لا |
| VMS DCL [ 23 ] | أوبن في إم إس | تلقائياً لعملية تسجيل الدخول/التفاعلية | 1977 [ 24 ] | نعم | نظام إدارة الفيديو | نظام إدارة الفيديو | ملكية خاصة، مدمجة في نظام إدارة الفيديو | بموجب ترخيص خاص فقط | واجهة سطر الأوامر النصية | مع نظام التشغيل DECwindows/Motif | نعم | نعم، على الأقل وفقًا لمعايير عام 1988 | نعم | نعم ( تعيين sys$input و sys$output ) | نعم (عبر الرموز والأسماء المنطقية والخيارات) | نعم (SYS$MANAGER:SYLOGIN.COM و LOGIN.COM المحدد من قبل المستخدم) | نعم | نعم | لا |
| باور شيل | .NET ، إطار عمل .NET | باور شيل | 2006 | نعم | ويندوز 10، 8، سيرفر 2008، 7 [ nb 7 ] | ويندوز 10، 8، سيرفر 2008، 7 | على طريقة معهد ماساتشوستس للتكنولوجيا | نعم | واجهة سطر الأوامر الرسومية | نعم | نعم | نعم | نعم | نعم | نعم (عبر المتغيرات والخيارات) | نعم (%USERPROFILE%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1) | نعم (ميزة في PowerShell) | نعم | لا |
| rc | الخطة 9 ، POSIX | rc | 1989 | نعم | الخطة 9 ، الإصدار 10 يونكس | الخطة 9 ، الإصدار 10 يونكس | رخصة MIT [ 25 ] | نعم | واجهة سطر الأوامر النصية | ؟ | نعم | نعم | ؟ | نعم | نعم (عبر الخيارات) | نعم ( $HOME/.rcrc ) | نعم | ؟ | نعم |
| بينشيل | جافا | ؟ | 2005 | نعم | ؟ | ؟ | إل جي بي إل | ؟ | ؟ | ؟ | نعم | ؟ | ؟ | نعم | ؟ | ؟ | ؟ | ؟ | لا |
| سمكة | بوسيكس | سمكة | 2005 [ 26 ] | نعم | GhostBSD | ؟ | رخصة جنو العمومية | نعم | واجهة سطر الأوامر النصية | ؟ | نعم | ؟ | ؟ | نعم ( وظائف عشوائية ) | نعم (عبر متغيرات البيئة وعبر واجهة الويب من خلال fish_config ) | نعم ( /etc/fish/config.fish و ~/.config/fish/config.fish ) | نعم (ميزة في نظام يونكس) | نعم ( ~/.config/fish/fish_history* ) | ؟ |
| أيون | ريدوكس ، لينكس | أيون | 2015 [ 27 ] | نعم | الأكسدة والاختزال | الأكسدة والاختزال | معهد ماساتشوستس للتكنولوجيا | نعم | واجهة سطر الأوامر النصية | ؟ | نعم | نعم | ؟ | نعم ( وظائف عشوائية ) | نعم (يتبع مواصفات دليل XDG الأساسي) | نعم ( ~/.config/ion/initrc ) | نعم | نعم ( ~/.local/share/ion/history ) | جزئي (غير موزع كملف تنفيذي مستقل، ولكن يمكن بناؤه كملف تنفيذي مستقل) |
الميزات التفاعلية
| صدَفَة | بيئة متكاملة | مقتطفات | عرض القيمة | قائمة/ خيارات | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| قذيفة طومسون | لا | لا | لا | لا | لا | لا | لا | ؟ | ؟ | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا |
| نسخة بورن شيل لعام 1977 | لا | لا | لا | لا | لا | لا | لا | ؟ | ؟ | لا | لا | لا | لا | لا | لا | نعم | لا | خارجي | لا |
| الإصدار الحالي من بورن شيل | لا | نعم [ ملاحظة 8 ] | لا | لا | نعم [ ملاحظة 8 ] | لا | لا | نعم | نعم | لا | نعم (CDPATH، pushd، popd، dirs)، CDPATH منذ الإصدار 4 | لا | لا | لا | لا | نعم | لا | خارجي | لا |
| واجهة سطر أوامر POSIX | لا | لا | لا | لا | نعم | لا | لا | نعم | نعم | لا | نعم ( CDPATH ) | لا | لا | لا | لا | نعم | لا | خارجي | لا |
| باش (الإصدار 4.0) | نعم | نعم | نعم | نعم [ ملاحظة 9 ] | نعم | لا | لا | نعم | نعم | لا | نعم ( CDPATH ، pushd ، popd ) | خياري | لا | لا | لا | نعم | نعم | خارجي | لا |
| csh | نعم | نعم | لا | لا | نعم | لا | لا | نعم | نعم | لا | نعم ( cdpath ، pushd ، popd ) | خياري | لا | لا | لا | نعم | لا | خارجي | لا |
| tcsh | نعم | نعم | عند تعريفها | لا | نعم | لا | لا | نعم | نعم | لا | نعم ( cdpath ، pushd ، popd ) | خياري | نعم | لا | لا | نعم | لا | خارجي | لا |
| غلاف هاميلتون سي | نعم | نعم | لا | نعم | نعم | لا | لا | نعم | نعم | لا | نعم ( cdpath ، pushd ، popd ) | لا | لا | لا | لا | نعم | لا | خارجي | لا |
| Scsh | لا | لا | لا | لا | لا | لا | لا | ؟ | ؟ | لا | لا | لا | لا | لا | لا | نعم | لا | خارجي | لا |
| ksh (ksh93t+) | نعم (قابل للتمديد) | نعم (قابل للتمديد) | لا | لا | نعم | لا | لا | نعم | نعم | لا | نعم ( cdpath مدمج، pushd و popd تم تنفيذهما كدوال) | لا | لا | لا | لا | نعم | نعم | خارجي | لا |
| pdksh | نعم | نعم | لا | لا | نعم | لا | لا | نعم | نعم | لا | لا | لا | لا | لا | لا | نعم | نعم | خارجي | لا |
| zsh | نعم | نعم | نعم | نعم [ 28 ] | نعم | نعم [ 29 ] | نعم (عبر التنبؤ أو المحدد من قبل المستخدم [ 30 ] ) | نعم | نعم | امتداد الطرف الثالث [ 31 ] | نعم | خياري | نعم | لا | عند تعريفها (كعناصر واجهة مستخدم ZLE) | نعم | نعم | خارجي | نعم |
| رماد | لا | لا | لا | لا | نعم | لا | لا | نعم | نعم | لا | لا | لا | لا | لا | لا | نعم | نعم | خارجي | لا |
| الحزب الشيوعي الصيني | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا |
| COMMAND.COM | لا | لا | لا | لا | لا [ ملاحظة 10 ] [ ملاحظة 11 ] | لا | لا | لا | لا (فقط في DR-DOS من خلال %$ON% و %$OFF% و %$HEADER% و %$FOOTER% ) | لا | لا | لا | لا | لا (التنفيذ خطوة بخطوة فقط باستخدام الأمر COMMAND /Y [ 32 ] ) | لا | لا | لا (فقط عبر أمر CHOICE الخارجي ، وفي DR-DOS أيضًا عبر أوامر SWITCH / DRSWITCH الداخلية) | لا | لا |
| OS/2 CMD.EXE | نعم | نعم | لا | لا | نعم | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا |
| ويندوز CMD.EXE | جزئي | جزئي | لا | لا | نعم ( F8 ) | لا | لا | لا | لا | لا | نعم ( PUSHD ، POPD ) | لا | لا | لا | لا | نعم (عبر الأمر SET /P ) | لا | لا | لا |
| 4DOS | نعم | نعم | نعم | نعم | نعم [ ملاحظة 12 ] [ ملاحظة 13 ] | لا | لا | نعم | لا | لا | (عبر النافذة المنبثقة، وعمليات البحث الموسعة في الدليل، و CDPATH ، وPUSHD ، و POPD ، و DIRHISTORY ، وDIRS ، وCDD ، وأوامر CD ، ووظيفة %@DIRSTACK[] ) | نعم | لا | نعم | لا | نعم (عبر أوامر INPUT و INKEY و ESET ) | نعم (عبر دالة @SELECT[] ، وبشكل غير مباشر عبر مجموعة من أوامر INKEY و INPUT و SWITCH ) | لا | نعم |
| 4OS2 | ؟ | ؟ | ؟ | ؟ | نعم | لا | لا | نعم | لا | لا | نعم | نعم | لا | ؟ | لا | ؟ | ؟ | لا | نعم |
| TCC (سابقًا 4NT) | نعم | نعم | نعم | نعم | نعم | لا | لا | نعم | لا | نعم | (عبر النافذة المنبثقة، وعمليات البحث الموسعة في الدليل، و CDPATH ، وPUSHD ، و POPD ، و DIRHISTORY ، وDIRS ، وCDD ، وأوامر CD ، ووظيفة %@DIRSTACK[] ) | نعم | لا | نعم | لا | نعم (عبر أوامر INPUT و INKEY و ESET و SET /P ) | نعم (عبر دالة @SELECT[] ، وبشكل غير مباشر عبر مجموعة من أوامر INKEY و INPUT و SWITCH ) [ nb 14 ] | لا | نعم |
| باور شيل | نعم | نعم | نعم | نعم | نعم ( F8 ) | نعم | نعم؛ عبر وحدة PSReadLine [ 33 ] (المضمنة في الإصدار 5.0 [ 34 ] ) أو في ISE [ 35 ] | امتداد الطرف الثالث [ 36 ] | نعم [ 37 ] | نعم؛ عبر وحدة PSReadLine [ 33 ] (المضمنة في الإصدار 5.0) أو في ISE [ 35 ] | نعم (مجموعات متعددة؛ أنواع مواقع متعددة؛ [ 38 ] دفع الموقع ، سحب الموقع ) | نعم، في وحدة PSReadLine [ 33 ] | نعم، في ISE [ 35 ] | نعم، في ISE [ 35 ] | نعم | نعم [ 39 ] | نعم [ 40 ] | نعم، في ISE [ 35 ] | نافذة منبثقة [ 41 ] |
| rc | نعم [ ملاحظة 15 ] | نعم [ ملاحظة 15 ] | لا | لا | نعم [ ملاحظة 15 ] | لا | لا | لا | ؟ | لا | لا | لا | لا | لا | لا | ؟ | لا | لا | لا |
| بينشيل | نعم | نعم | لا | لا | لا | لا | لا | ؟ | ؟ | لا | لا | لا | لا | لا | لا | لا | لا | لا | لا |
| VMS DCL | مخطط الحد الأدنى للتفرد | لا | لا | لا | نعم | نعم | لا | ؟ | ؟ | لا | لا | لا | لا | لا | لا | نعم | لا | لا | لا |
| سمكة | نعم | نعم | نعم [ 42 ] | نعم [ 42 ] | نعم | لا | نعم | نعم | نعم (مساعد مدمج متاح [ 43 ] ) | نعم | نعم | نعم | نعم | نعم [ ملاحظة 16 ] | نعم، باستخدام أمر abbr | نعم | (عبر أمر fish_config [ 44 ] ) | لا | لا |
تنفيذ في الخلفية
يُتيح التنفيذ في الخلفية تشغيل الأوامر دون تدخل المستخدم في الطرفية، مما يُتيح استخدام سطر الأوامر لإجراء مهام أخرى. وتُتيح أنظمة POSIX وغيرها من أنظمة Unix التنفيذ في الخلفية باستخدام الرمز & في نهاية الأمر.
إنجازات

تساعد ميزة الإكمال المستخدم في كتابة الأوامر في سطر الأوامر، من خلال البحث عن الكلمات المطابقة واقتراحها للكلمات غير المكتملة. ويتم طلب الإكمال عادةً بالضغط على مفتاح الإكمال (غالباً مفتاح Tab ↹).
إكمال اسم الأمر هو إكمال اسم الأمر. في معظم أنظمة التشغيل، يمكن أن يكون الأمر برنامجًا في مسار الأوامر (عادةً ما يكون $PATH)، أو أمرًا مدمجًا، أو دالة، أو اسمًا مستعارًا.
إكمال المسار هو إكمال مسار الملف، سواء كان مسارًا نسبيًا أو مطلقًا.
يُعد إكمال الأحرف البديلة تعميمًا لإكمال المسار، حيث يطابق التعبير أي عدد من الملفات، باستخدام أي صيغة مدعومة لمطابقة الملفات .
الإكمال التلقائي للمتغيرات هو إكمال اسم المتغير نفسه ( متغير بيئة أو متغير شل). توفر لغات Bash وzsh وfish ميزة الإكمال التلقائي لجميع أسماء المتغيرات. أما PowerShell، فتُوفر هذه الميزة لأسماء متغيرات البيئة، ومتغيرات الشل، وأسماء المعاملات من داخل الدوال المُعرَّفة من قِبل المستخدم.
إكمال وسيطات الأوامر هو إكمال وسائط أمرٍ مُحدد. يوجد نوعان من الوسائط: المُسماة والموضعية. تُعرف الوسائط المُسماة، والتي تُسمى غالبًا بالخيارات ، باسمها أو الحرف الذي يسبق قيمتها، بينما تتكون الوسائط الموضعية من القيمة فقط. تسمح بعض أنظمة التشغيل بإكمال أسماء الوسائط، لكن القليل منها يدعم إكمال قيمها.
توفر بيئات Bash وzsh وfish ميزة إكمال أسماء المعاملات من خلال تعريف خارجي للأمر، مُوزّع في ملف تعريف إكمال منفصل. بالنسبة لإكمال أسماء/قيم معاملات الأوامر، تفترض هذه البيئات إكمال المسار/اسم الملف إذا لم يُعرّف إكمال للأمر. يمكن إعداد الإكمال لاقتراح حلول ديناميكيًا عن طريق استدعاء دالة في بيئة التشغيل. [ 45 ] تدعم بيئة fish أيضًا تحليل صفحات الدليل لاستخراج معلومات المعاملات التي يمكن استخدامها لتحسين الإكمال/الاقتراحات. في PowerShell، تكشف جميع أنواع الأوامر (cmdlets، الدوال، ملفات البرامج النصية) بطبيعتها عن بيانات حول أسماء وأنواع ونطاقات/قوائم القيم الصالحة لكل وسيط. تستخدم PowerShell هذه البيانات الوصفية لدعم إكمال أسماء وقيم الوسائط تلقائيًا للأوامر/الدوال المدمجة، والأوامر/الدوال المُعرّفة من قِبل المستخدم، وكذلك ملفات البرامج النصية. يمكن لأوامر cmdlets الفردية أيضًا تعريف إكمال ديناميكي لقيم الوسائط حيث تُحسب قيم الإكمال ديناميكيًا على النظام قيد التشغيل.
سجل الأوامر
قد يجد مستخدمو سطر الأوامر أنفسهم يكتبون شيئًا مشابهًا لما كتبوه سابقًا. تتيح خاصية سجل الأوامر للمستخدم استرجاع أمر سابق في محرر سطر الأوامر وتعديله قبل تنفيذ الأمر الذي قد يكون قد تم تعديله.
قد تتمكن أيضًا أنظمة التشغيل التي تدعم الإكمال من إكمال الأمر مباشرة من سجل الأوامر عند إعطاء جزء جزئي/أولي من الأمر السابق.
تدعم معظم واجهات سطر الأوامر الحديثة سجل الأوامر. كما تدعم الواجهات التي تدعم سجل الأوامر بشكل عام إكمال الأوامر من السجل بدلاً من مجرد استرجاعها منه. بالإضافة إلى نص الأمر، يسجل 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 ]
التصحيح التلقائي

عندما لا يتطابق سطر الأوامر مع الأمر أو الوسائط بشكل مباشر، يمكن للتدقيق الإملائي تصحيح أخطاء الكتابة الشائعة تلقائيًا (مثل حساسية حالة الأحرف، أو الأحرف المفقودة). هناك طريقتان للقيام بذلك؛ إما أن يقترح النظام التصحيحات المحتملة عند استدعاء الأمر، أو أن يحدث ذلك مسبقًا كجزء من الإكمال التلقائي.
تتميز واجهات الأوامر 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 ] | نعم | لا |
| zsh | read -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 ). exec
لا تُمنح صلاحية التنفيذ إلا عند تشغيل البرنامج النصي مباشرةً. أما إذا تم استدعاء برنامج نصي كوسيط في الصدفة المُفسِّرة، فسيتم تنفيذه بغض النظر عما إذا كان المستخدم يملك صلاحية التنفيذ لهذا البرنامج النصي أم لا.
على الرغم من أن نظام التشغيل Windows يحدد أيضًا إذن التنفيذ ، إلا أن أيًا من واجهات سطر الأوامر الخاصة بنظام Windows لا تمنع تنفيذ البرامج النصية إذا لم يتم منح الإذن.
مجموعة فرعية مقيدة من الصدفة
يمكن تشغيل عدة واجهات طرفية أو تهيئتها للتشغيل في وضع لا يتيح للمستخدم سوى مجموعة محدودة من الأوامر والإجراءات. ورغم أن هذا لا يُعدّ حدًا أمنيًا (إذ يُحظر الأمر الذي يصل إلى المورد وليس المورد نفسه)، إلا أنه يُستخدم عادةً لتقييد إجراءات المستخدمين قبل تسجيل الدخول.
تم تقييم وضع مقيد لمواصفات POSIX الخاصة بالأصداف، لكنه لم يُدرج. [ 73 ] ومع ذلك، تدعم معظم أصداف Linux/Unix وضعًا كهذا حيث يتم تعطيل العديد من الأوامر المدمجة ولا يمكن استدعاء سوى الأوامر الخارجية من دليل معين.
يدعم PowerShell الأوضاع المقيدة من خلال ملفات تكوين الجلسة أو تكوينات الجلسة. يمكن لملف تكوين الجلسة تحديد أوامر cmdlets المرئية (المتاحة)، والأسماء المستعارة، والدوال، وموفري المسارات، وغير ذلك. [ 74 ]
مجموعة البيانات الآمنة
قد تُشكّل البرامج النصية التي تستدعي برامج نصية أخرى خطرًا أمنيًا، إذ يُمكنها تنفيذ تعليمات برمجية خارجية ضمن صلاحيات المستخدم الذي شغّل البرنامج النصي الأصلي. عادةً ما تُصمّم البرامج النصية بحيث تقتصر على البرامج النصية من مواقع آمنة معروفة؛ ولكن في بعض الحالات، مثل توفير طريقة للمستخدم لضبط بيئة التشغيل أو تحميل رسائل مترجمة، قد يحتاج البرنامج النصي إلى تضمين برامج نصية/ملفات أخرى. [ 75 ] إحدى طرق معالجة هذا الخطر هي أن يُوفّر نظام التشغيل مجموعة فرعية آمنة من الأوامر التي يُمكن تنفيذها بواسطة برنامج نصي مُضمّن.
ملحوظات
- ↑ منذ منتصف التسعينيات.
- ↑ إذا تم تجميعها باستخدام -DACCT.
- ↑ مكون MS-DOS وWindows - مشمول بترخيص ساري المفعول لنظام MS-DOS أو Microsoft Windows.
- ↑ مكون نظام التشغيل OS/2 – مشمول بترخيص ساري المفعول لنظام التشغيل OS/2.
- ↑ تم تمكين ملحقات الأوامر، أو "CMD /X".
- ↑ مكون ويندوز – مشمول بترخيص ساري المفعول لنظام التشغيل مايكروسوفت ويندوز.
- ↑ يتم تثبيت Microsoft PowerShell افتراضيًا على نظام التشغيل Windows 7 والإصدارات الأحدث. وهو برنامج اختياري للتنزيل لمستخدمي Windows Vista أو Windows XP.
- 1 2 3 الإصدارات الحالية من يورغ شيلينغ.
- ↑ سيؤدي الضغط على Alt-Shift-8 أو Alt-* إلى توسيع القائمة الكاملة لأسماء الملفات المطابقة.
- ↑ متوفر من خلالإضافة DOSKEY .
- ↑ متوفر في DR-DOS من خلال HISTORY .
- ↑ متوفر أيضًا من خلالإضافة DOSKEY .
- ↑ متوفر أيضًا بنظام DR-DOS من خلال HISTORY .
- ↑ يحتوي TCC على وظائف مطالبة خاصة بـ نعم، لا، إلغاء، إغلاق، إعادة المحاولة.
- 1 2 3 يتم التعامل معها بواسطة rio أو GNU readline أو editline أو vrl .
- ↑ صدفة السمكة عبارة عن سطح إدخال/إخراج تفاعلي قائم على الأحرف.
- ↑ غير متوفر كأمر مدمج في سطر الأوامر.يتوفر الأمر الخارجي FINDSTR /R في معظم إصدارات ويندوز.
- ↑ يستفيد PowerShell من محرك التعبيرات النمطية الكامل لـ .NET والذي يتميز بالتقاطات المسماة، والنظر إلى الأمام/الخلف بدون عرض، والبحث الجشع/غير الجشع، وفئات الأحرف، وحساب المستويات، وما إلى ذلك.
- 1 2 3 4 5 6 7 8 9 10 11 يمكن استخدام xautomation و xdotool لإنشاء ضغطات المفاتيح تحت نظام X Window ؛ أو يمكن تشغيل برنامج في طرفية زائفة للتحكم فيه (كما هو الحال مع أداة expect ).
- ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ يمكن للصدفة استخدام أداة stty لإيقاف عرض الأحرف المكتوبة على الشاشة. يتطلب هذا عدة خطوات: ١. قراءة حالة العرض الحالية، ٢. إيقاف العرض، ٣. قراءة المدخلات، ٤. إعادة حالة العرض إلى حالتها الأصلية.
- ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ١٠ ١١ ١٢ يتم فرض إذن التنفيذ بواسطة برنامج منفصل، وهو مُحمِّل البرامج، وذلك برفض استدعاء المُفسِّر (ربما يكون سطر أوامر) المُحدَّد بواسطة سطر التجزئة في البرنامج النصي . لا يفرض المُفسِّر إذن التنفيذ إذا تم استدعاؤه مباشرةً كما يفعل مُحمِّل البرامج، مع تمرير الملف كوسيط؛ فهذا يتطلب إذن قراءة فقط، كما هو الحال عند تمرير الملف كمدخل إلى المُفسِّر، وفي هذه الحالة لا يستطيع المُفسِّر رؤية إذن التنفيذ.
- 1 2 كما أن واجهات zsh و fish تحترم إذن التنفيذ لإكمال الأوامر.
- في نظام DR-DOS، يُستخدم الفاصل المنقوط كفاصل لكلمات مرور الملفات والمجلدات. ويدعم نظام 4DOS هذا أيضًا طالما أن الأمر لا يدعم قوائم التضمين. في نظام 4DOS، يجب مضاعفة فاصل كلمات المرور لجميع الأوامر التي تدعم قوائم التضمين لتمييز كلمات المرور عن قوائم التضمين. أما الأوامر التي لا تدعم قوائم التضمين، فتقبل كلا الشكلين. يدعم نظام DR-DOS الإصدار 7.02 والإصدارات الأحدث، بشكل اختياري، استخدام الفاصل المنقوط المزدوج أيضًا، بحيث يعمل الفاصل المنقوط المزدوج في كل من COMMAND.COM و4DOS بغض النظر عن الأمر المُنفذ.
- يدعم نظام DR -DOS كلمات مرور للملفات للقراءة والكتابة والحذف، بالإضافة إلى إمكانية منحها صلاحيات التنفيذ. لا تكون الملفات محمية افتراضيًا، ولكن يمكن ضبط النظام بحيث تتطلب بعض البرامج النصية كلمة مرور للقراءة.
- 1 2
INPUT /PويعيدINKEY /Pعلامات النجمة لكل حرف مكتوب. - ↑
Read-Host -AsSecureStringيقرأ سلسلة من الأحرف من جهاز الإدخال إلى سلسلة مشفرة، حرفًا واحدًا في كل مرة، مما يضمن عدم وجود صورة ذاكرة للنص الواضح يمكن استخلاصها من مسح الذاكرة، أو من تفريغات الأعطال، أو تفريغات الذاكرة، أو ملفات الترحيل، أو ملفات السجل أو ما شابه ذلك. - ↑ ترتبط ملفات PowerShell النصية ( ملفات .ps1 ) افتراضيًا بمحرر المفكرة، وليس بمحرك تنفيذ PowerShell. سيؤدي استدعاء ملف .ps1 إلى تشغيل المفكرة بدلاً من تنفيذ البرنامج النصي.
- ↑ يمكن لبرامج بدء التشغيل لكل جهاز كمبيوتر/مستخدم استيراد الوحدات النمطية وعرض مجموعة فرعية من الأوامر/الوظائف المتاحة في الوحدات النمطية.
مراجع
- ↑ يتوفر إصدار مستقل عن المنصة، مبني على شفرة المصدر الأصلية التاريخية لنظام يونكس الإصدار السابع،من جيف كولير
- ↑ يتوفر الإصدار التاريخي من نظام التشغيل UNIX V7 بموجب ترخيص على غرار BSD. تمت أرشفته في 2011-08-06 على موقع Wayback Machine من خلال جمعية تراث Unix وغيرها.
- ↑ يتوفر إصدار مستقل عن المنصة يعتمد على شفرة المصدر SVr4/Solaris منيورغ شيلينغ
- ↑ فيريل، جون، "الفصل 2. الصدفة الافتراضية" ، دليل البدء السريع لنظام FreeBSD لمستخدمي لينكس ، مشروع توثيق FreeBSD ، تم الاطلاع عليه بتاريخ 24 يوليو 2015
- ↑ "SchilliX-ON / SchilliX-ON Mercurial / [ b1d9a2 ] /usr/src/cmd/sh" . Sourceforge.net . تم الاطلاع عليه بتاريخ 2015-07-02 .
- ↑ معهد مهندسي الكهرباء والإلكترونيات ومجموعة Open Group (2008). معيار IEEE 1003.1 لتكنولوجيا المعلومات - واجهة نظام التشغيل المحمولة (POSIX): Shell والأدوات المساعدة، الإصدار 7 .
- ↑ كجزء من معيار IEEE Std.1003.2-1992 (POSIX.2)؛ تم دمجه في معيار IEEE Std.1003.1 مع مراجعة عام 2001.
- ↑ فوكس، برايان (7 يونيو 1989). تاور الابن، ليونارد هـ. (محرر). "باش في مرحلة تجريبية!" . مجموعة الأخبار : gnu.announce . يوزنت: 8906080235.AA01983@wheat-chex.ai.mit.edu . تاريخ الاسترجاع: 28 أكتوبر 2010 .
- ↑ كوبر، مندل، "الفصل 37.3.2. باش، الإصدار 4.2" ، دليل برمجة باش المتقدمة ، مشروع توثيق لينكس ، تم الاطلاع عليه بتاريخ 30 أبريل 2015"يدعم Bash الآن رمز الهروب Unicode \u و \U."
- ↑ جرير، كين (3 أكتوبر 1983). "واجهة سطر أوامر C مع التعرف على الأوامر وأسماء الملفات وإكمالها" . مجموعة الأخبار : net.sources . تاريخ الاسترجاع: 29 ديسمبر 2010 .
- ↑ "دليل البدء السريع لنظام FreeBSD لمستخدمي Linux®" . بوابة توثيق FreeBSD . تم الاطلاع عليه بتاريخ 4 فبراير 2024 .
- ↑ سوسمان، آن (26 ديسمبر 1988). "واجهة هاميلتون سي شيل تُسرّع تطوير تطبيقات نظام التشغيل OS/2" (ملف PDF) . مجلة PC Week (26 ديسمبر 1988 - 2 يناير 1989): 37. تاريخ الاسترجاع: 22 نوفمبر 2010 .
- ↑ غوميز، رون (9 يونيو 1983). "جدول مؤتمر تورنتو USENIX (مبدئي)" . مجموعة الأخبار : net.usenix . تاريخ الاسترجاع: 29 ديسمبر 2010 .
- ↑ هاريس، جاي (10-10-1983). "سؤال حول csh" . مجموعة الأخبار : net.flame . تم الاسترجاع في 29-12-2010 .
- 1 2 ksh93(1) صفحة الدليل
- 1 2 الصدفة الافتراضية في OpenBSD هي ksh (pdksh).
- ↑ "GhostBSD 26.1-R15.0p2 متوفر الآن" . أخبار GhostBSD . تم الاطلاع عليه بتاريخ 19 أبريل 2026 .
- ↑ محرر سطر الأوامر zsh قابل للتكوين بالكامل ويمكنه السماح بدعم الماوس بطرق مختلفة مثل استخدام mouse.zsh الخاص بـ Stéphane Chazelas .
- ↑ صفحة دليل zsh(1) والصفحات الفرعية
- ↑ صفحة دليل zshbuiltins(1)
- ↑ ليفيفري، فنسنت (11 فبراير 2015). "معرّفات الملفات متعددة الأرقام" . قائمة بريدية لمستخدمي zsh . تم الاطلاع بتاريخ 23 ديسمبر 2021 .
- ↑ "#782228 - لا يدعم busybox sh الأحرف متعددة البايت في معالجة السلاسل النصية - سجلات تقارير أخطاء دبيان" . Bugs.debian.org. 2015-04-09 . تم الاطلاع عليه بتاريخ 2015-07-02 .
- ↑ "قاموس أوامر HP OpenVMS DCL" . مؤرشف من الأصل بتاريخ 25-03-2007 . تم الاطلاع عليه بتاريخ 23-03-2009 .
- ↑ كيناه، لورانس ج. (1984). مكونات VAX/VMS الداخلية وهياكل البيانات . دار النشر الرقمية. ISBN 978-3-528-02410-9.
- ↑ لارابيل، مايكل (23 مارس 2021). "نقل حقوق الطبع والنشر لبرنامج Plan 9 إلى مؤسسة، وإصدار الكود المرخص من معهد ماساتشوستس للتكنولوجيا" . فورونيكس . تم الاطلاع عليه بتاريخ 28 مارس 2021 .
- ↑ ليليانكرانتز، أكسل (17-05-2005). "السمكة - الصدفة التفاعلية الودودة" . تم الاسترجاع في 08-04-2013 .
- ↑ سولر، جيريمي (15 نوفمبر 2015). "d79c8f511573fb7710abc63b4236a40022914520" . تم الاطلاع عليه بتاريخ 3 أغسطس 2019 .
- ↑ " [ Z Shell ] نظام الإكمال" . Zsh.sourceforge.io . تم الاطلاع عليه بتاريخ 24-02-2015 .
- ↑ ينطبق هذا فقط على الكلمات المحجوزة والخصائص النحوية الأخرى.
- ↑ على سبيل المثال عبر طرف ثالث مثل zsh-autosuggestions
- ↑ لا يدعم zsh تمييز الصيغة، ولكن يوجد مشروع تابع لجهة خارجية يوفر هذه الإمكانية كإضافة: zsh-syntax-highlighting
- ↑ بول، ماتياس ر. (2 أكتوبر 1997) [29 سبتمبر 1997]. "تحديث Caldera OpenDOS 7.01/7.02 ألفا 3 IBMBIO.COM - README.TXT وBOOT.TXT - وصف موجز لكيفية تشغيل OpenDOS" . مؤرشف من الأصل في 4 أكتوبر 2003. تم الاطلاع عليه في 29 مارس 2009 .
- 1 2 3 4 5 شيرك، جيسون (2018-02-15). "PSReadLine: تطبيق readline مستوحى من bash لـ PowerShell" - عبر GitHub.
- ↑ "Windows PowerShell 5.0" . مؤرشف من الأصل بتاريخ 17 سبتمبر 2016. تم الاطلاع عليه بتاريخ 8 سبتمبر 2016 .
- 1 2 3 4 5 "بيئة البرمجة النصية المتكاملة لـ Windows PowerShell (ISE)" . مايكروسوفت تكنيت . تم الاسترجاع في 12 سبتمبر 2015 .
- ↑ "Get-ChildItemColor" . GitHub . 2022-03-18.
- ↑ sdwheeler. "Write-Host (Microsoft.PowerShell.Utility) - PowerShell" . docs.microsoft.com . تم الاطلاع عليه بتاريخ 18 يناير 2022 .
- ↑ يسمح كل من Push-Location (مع الاسم المستعار
pushd) و Pop-Location (مع الاسم المستعارpopd) بدفع أنواع متعددة من المواقع (دلائل أنظمة الملفات، والوحدات التنظيمية لـ Active Directory ، وعقد سجل Windows وما إلى ذلك) إلى مكدسات المواقع وسحبها منها. - تتيح الدالة $host.ui.PromptForChoice عرض قائمة منسدلة للاختيارات. تعمل هذه القائمة من مهام الخلفية وكذلك من الجلسات البعيدة، حيث تعرضها على وحدة تحكم الجلسة المتحكمة.
- ↑ يقوم الأمر cmdlet Write-Progress بكتابة شريط تقدم يمكنه الإشارة إلى النسبة المئوية والثواني المتبقية وما إلى ذلك. تعمل رسائل شريط التقدم من مهام الخلفية أو الجلسات البعيدة بالإضافة إلى البرامج النصية التفاعلية، أي يتم عرض شريط التقدم على وحدة تحكم الجلسة المتحكمة، وليس كجزء من الإخراج العادي.
- ↑ يقوم الأمر cmdlet Show -Command بفحص تعريف الأمر ويفتح نافذة تفاعلية تحتوي على حقل إدخال مُسمى لكل مُعامل/مفتاح تبديل
- 1 2 "fish: Documentation" . قسم إكمال علامة التبويب . تم الاسترجاع في 10-01-2016 .
- ↑ "set_color - تعيين لون الطرفية — وثائق fish-shell 3.1.2" . fishshell.com . مؤرشف من الأصل بتاريخ 17 فبراير 2020. تم الاطلاع عليه بتاريخ 23 فبراير 2021 .
- ↑ "abbr - إدارة اختصارات الأسماك - وثائق fish-shell 3.1.2" . fishshell.com . تم الاطلاع عليه بتاريخ 23 فبراير 2021 .
- ↑ "zsh: 20. نظام الإكمال" . Zsh.sourceforge.io. 2013-03-06 . تم الاطلاع عليه بتاريخ 2013-08-18 .
- ↑ sdwheeler. "ما الجديد في بيئة PowerShell 5.0 المتكاملة - PowerShell" . docs.microsoft.com . تم الاطلاع عليه بتاريخ 25 يوليو 2021 .
- ↑ "GitHub - marlonrichert/zsh-autocomplete: 🤖 إكمال تلقائي فوري لـ Zsh. بحث غير متزامن أثناء الكتابة" . GitHub . تم الاطلاع عليه بتاريخ 25 يوليو 2021 .
- ↑ "الاستخدام التفاعلي - وثائق fish-shell 3.3.1" . fishshell.com . تم الاطلاع عليه بتاريخ 25-07-2021 .
- ↑ هان، هارلي (2009). دليل هارلي هان لنظامي يونكس ولينكس . بوسطن: ماكجرو هيل للتعليم العالي. ISBN 978-0-07-313361-4. OCLC 184828059 .
- ↑ نظام التشغيل Concurrent DOS 386 - نظام تشغيل متعدد المستخدمين/متعدد المهام - دليل المستخدم (PDF) . بحث رقمي .
- ↑ "pv(1): مراقبة تقدم البيانات عبر الأنبوب - صفحة دليل لينكس" . Linux.die.net . تم الاطلاع عليه بتاريخ 24-02-2015 .
- ↑ "fish: Tutorial" . fishshell.com . تم الاطلاع عليه بتاريخ 21-10-2022 .
- ↑ "zsh-users/zsh-syntax-highlighting: تمييز بناء الجملة على غرار Fish shell لـ Zsh" . GitHub . تم الاسترجاع في 18 أغسطس 2013 .
- ↑ sdwheeler. "وحدة PSReadLine - PowerShell" . learn.microsoft.com . تم الاطلاع عليه بتاريخ 26-04-2023 .
- ↑ "أنواع أشجار الدردار" . مؤرشف من الأصل بتاريخ 10-03-2010 . تم الاطلاع عليه بتاريخ 15-12-2014 .
- ↑ "تعيين متغير البيئة - موجه أوامر ويندوز" . SS64.com . تم الاطلاع عليه بتاريخ 24-02-2015 .
- ↑ "كيفية المرور على عناصر المصفوفة دفعة واحدة؟" . Stack Overflow . تم الاطلاع عليه بتاريخ 24-02-2015 .
- ↑ تُعرّف فئة System.Math في .NETالدوال الرياضية التي يمكن استخدامها من خلال الاختصار [Math] ، على سبيل المثال [Math]::Sin لدالة الجيب .
- ↑ "الحصول على إغلاق باستخدام GetNewClosure" . devblogs.microsoft.com . 27-03-2009 . تم الاطلاع عليه بتاريخ 12-09-2022 .
- ↑ "string - معالجة السلاسل النصية — وثائق fish-shell 3.1.2" . fishshell.com . تم الاطلاع عليه بتاريخ 23 فبراير 2021 .
- ↑ مرجع لغة هاميلتون سي شل: استخدام الأحرف البديلة ومطابقة الأنماط ، مختبرات هاميلتون ، تم الاطلاع عليه بتاريخ 29-10-2013 ،
...
دليل غير محدد: مطابقة أي عدد من مستويات الدليل - صفر أو أكثر - مهما تطلب الأمر لجعل بقية النمط متطابقًا.
- 1 2 سيباخ، بيتر (21-11-2008). مقدمة في كتابة البرامج النصية المحمولة: من المبتدئ إلى المحترف . صوت خبير في المصادر المفتوحة. أبريس (نُشر عام 2008). ص 149. ISBN 9781430210436تم الاطلاع عليه بتاريخ 17-09-2014 .
يتوفر توسيع Brace في ksh93 و pdksh و bash و zsh.
- ↑ يوفر Zsh مجموعة متنوعة من خيارات التجميع .
- ↑ sdwheeler. "حول عوامل التشغيل - PowerShell" . docs.microsoft.com . تم الاطلاع عليه بتاريخ 18 يناير 2022 .
- ↑ براذرز، هاردين؛ راوسون، توم ؛ كون، ريكس سي .؛ بول، ماتياس ر.؛ داي، تشارلز إي.؛ جورجيف، لوتشيزار آي. (27-02-2002). المساعدة عبر الإنترنت لنظام 4DOS 8.00 .
- ↑ "إيجاد طريقة لجعل الأمر 'psub --fifo' آمنًا من حالات التعطل · المشكلة رقم 1040 · fish-shell/fish-shell" . GitHub .
- ↑ "دليل مرجعي لـ Bash: الصدفة المقيدة" . Gnu.org. 2010-12-28 . تم الاطلاع عليه بتاريخ 2013-08-18 .
- ↑ "حول أقسام البيانات" . Technet.microsoft.com . تم الاطلاع عليه بتاريخ 24-02-2015 .
- ↑ بروفوس، نيلز. "تشفير الذاكرة الافتراضية" . مركز تكامل تكنولوجيا المعلومات، جامعة ميشيغان . تم الاطلاع عليه بتاريخ 20 ديسمبر 2012 .
- ↑ "bash - GNU Bourne-Again SHell" .
read -s الوضع الصامت. إذا كان الإدخال قادمًا من طرفية، فلن يتم عرض الأحرف.
- ↑ "استخدام الأمر Read-Host" .
بإضافة المعامل -assecurestring، يمكنك إخفاء البيانات المُدخلة في موجه الأوامر.
- ↑ "أمر لينكس/يونكس: stty" . Linux.about.com. مؤرشف من الأصل بتاريخ 25-02-2015 . تم الاطلاع عليه بتاريخ 24-02-2015 .
- ↑ "man sh - shell, the standard command language interpreter / posix" . Pwet.fr. مؤرشف من الأصل بتاريخ 21-12-2014 . تم الاطلاع عليه بتاريخ 18-08-2013 .
- ↑ "New-PSSessionConfigurationFile" . Technet.microsoft.com . تم الاطلاع عليه بتاريخ 18-08-2013 .
- ↑ ألبينغ، كارل؛ فوسن، جيه بي؛ نيوهام، كاميرون (2007). كتاب طبخ باش ( الطبعة الأولى). سيباستوبول، كاليفورنيا، الولايات المتحدة الأمريكية: أورايلي ميديا . ISBN 978-0-596-52678-8[...] ليس مجرد قائمة سلبية من المتغيرات المُهيأة، بل يمكنه تشغيل أوامر أخرى (مثل cat) واستخدام عبارات if لتغيير خياراته. حتى أنه ينتهي بعرض رسالة. لذا ،
توخَّ الحذر عند استدعاء أي شيء، فقد يُفتح ذلك ثغرة أمنية في برنامجك النصي.
روابط خارجية
- ناساريك، ماركوس (مايو 2007). "مقال" (ملف PDF) . مقارنة Bash مع واجهة سطر الأوامر في ويندوز فيستا: ألعاب Shell . مجلة لينكس . مؤرشف (ملف PDF) من النسخة الأصلية بتاريخ 10 أكتوبر 2014.
- "واجهة سطر الأوامر والأدوات المساعدة" . معيار IEEE لتقنية المعلومات 1003.1™-2024 - واجهة نظام التشغيل المحمولة POSIX™.1-2024 - المواصفات الأساسية لمجموعة Open Group، الإصدار 8 (طبعة 2024 ). IEEE ومجموعة Open Group. 2024-08-08.
- أنظمة يونكس
- واجهات الأوامر
- مقارنات البرامج
