عربيالفرنسيةالإسبانية

Ad


OnWorks فافيكون

mksh - عبر الإنترنت في السحابة

قم بتشغيل mksh في مزود استضافة OnWorks المجاني عبر Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

هذا هو الأمر mksh الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


مكش, sh - قذيفة MirBSD Korn

موجز


مكش [- + abCefhiklmnprUuvXx] [-T [!]الكتابة البعيدة | -] [- + س خيار] [-c سلسلة | -s | ملف
[حجة ]]
اسم مدمج [حجة ]

الوصف


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

أنا an أندرويد المستعمل، so ما هى مكش؟
مكش هو مفسر لقذيفة / أوامر UNIX ، مشابه لـ كوماند.كوم or CMD.EXE، التي لديها
تم تضمينه في مشروع Android Open Source Project لفترة من الوقت الآن. في الأساس ، إنه برنامج
يعمل في محطة طرفية (نافذة وحدة التحكم) ، يأخذ مدخلات المستخدم ويقوم بتشغيل الأوامر أو البرامج النصية ،
والتي يمكن أن تطلبها البرامج الأخرى أيضًا ، حتى في الخلفية. أي امتياز
النوافذ المنبثقة التي قد تواجهها ليست كذلك مكش قضايا ولكن أسئلة من قبل بعض الآخرين
البرنامج الذي يستخدمه.

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

الخيارات كالتالي:

-c سلسلة مكش سينفذ الأمر (الأوامر) الواردة في سلسلة.

-i قذيفة تفاعلية. الصدفة التي تقرأ الأوامر من الإدخال القياسي هي
"تفاعلي" إذا تم استخدام هذا الخيار أو إذا كان كل من الإدخال القياسي والخطأ القياسي
مرفقة ب الكتابة البعيدة(4). قذيفة تفاعلية تم تمكين التحكم الوظيفي ، يتجاهلها
إشارات SIGINT و SIGQUIT و SIGTERM وتطبع المطالبات قبل قراءة الإدخال
(انظر معلمات PS1 و PS2). كما تقوم أيضًا بمعالجة معلمة ENV أو ملف
مكشرك ملف (انظر أدناه). بالنسبة للأصداف غير التفاعلية ، فإن تراكول الخيار قيد التشغيل
بشكل افتراضي (راجع ملف طقم الأمر أدناه).

-l قذيفة تسجيل الدخول. إذا كان الاسم الأساسي للقذيفة يُستدعى بـ (ie argv [0]) يبدأ بـ
"-" أو إذا تم استخدام هذا الخيار ، يُفترض أن تكون shell قذيفة تسجيل دخول ؛ يرى
بدء التشغيل ملفات أدناه.

-p صدفة مميزة. قذيفة هي "امتياز" إذا كان معرف المستخدم الحقيقي أو معرف المجموعة يفعل ذلك
لا يتطابق مع معرف المستخدم الفعال أو معرف المجموعة (انظر Getuid(2) و جتيد(2)).
يؤدي مسح الخيار ذي الامتيازات إلى قيام shell بتعيين معرف المستخدم الفعال الخاص بها
(معرف المجموعة) إلى معرف المستخدم الحقيقي (معرف المجموعة). لمزيد من الآثار ، انظر بدء التشغيل
ملفات. إذا كان shell مميزًا ولم يتم تعيين هذه العلامة بشكل صريح ، فسيتم تعيين الامتداد
يتم مسح الخيار "ذي الامتياز" تلقائيًا بعد معالجة ملفات بدء التشغيل.

-r قذيفة مقيدة. قذيفة "مقيدة" إذا تم استخدام هذا الخيار. الأتى
تدخل القيود حيز التنفيذ بعد معالجة shell لأي ملف تعريف و ENV
الملفات:

·cdتشدر) الأمر معطل.
· لا يمكن تغيير معلمات SHELL و ENV و PATH.
· لا يمكن تحديد أسماء الأوامر بمسارات مطلقة أو نسبية.
·-p خيار الأمر المدمج أمر لا يمكن استخدامها.
· لا يمكن استخدام عمليات إعادة التوجيه التي تنشئ ملفات (مثل '>'، '> |'، '>>'، '<>').

-s يقرأ الغلاف الأوامر من المدخلات القياسية ؛ جميع الحجج غير الاختيارية هي
المعلمات الموضعية.

-T الاسم نسل مكش على الكتابة البعيدة(4) جهاز معين. الطرق الاسم, / ديف / ttyCname و
/ dev / ttyname حاولت بالترتيب. إلا إذا الاسم يبدأ بعلامة تعجب
('!') ، يتم ذلك في مجموعة فرعية ويعود على الفور. لو الاسم هو اندفاعة
("-") ، افصلها عن جهاز التحكم (daemonise) بدلاً من ذلك.

بالإضافة إلى ما سبق ، فإن الخيارات الموضحة في ملف طقم يمكن أيضًا استخدام الأمر المدمج
في سطر الأوامر: كلاهما [- + abCefhkmnuvXx[و]- + س خيار] يمكن استخدامها لحرف واحد
أو خيارات طويلة ، على التوالي.

إذا لم يكن -c ولا -s يتم تحديد الخيار ، تحدد الوسيطة الأولى غير الاختيارية
اسم الملف الذي تقرأ الصدفة الأوامر منه. إذا لم تكن هناك وسيطات غير اختيارية ، فإن ملف
تقرأ shell الأوامر من الإدخال القياسي. اسم القشرة (أي محتويات
$ 0) على النحو التالي: إذا كان -c يتم استخدام الخيار وهناك وسيطة غير متعلقة بالخيار ،
يتم استخدامه كاسم ؛ إذا كانت الأوامر قيد القراءة من ملف ، فسيتم استخدام الملف كملف
اسم؛ وبخلاف ذلك ، يتم استخدام الاسم الأساسي الذي تم استدعاء الصدفة به (ie argv [0]).

حالة الخروج من shell هي 127 إذا كان ملف الأوامر المحدد في سطر الأوامر ممكنًا
غير مفتوح أو غير صفري إذا حدث خطأ نحوي فادح أثناء تنفيذ ملف
النصي. في حالة عدم وجود أخطاء فادحة ، تكون حالة الخروج هي حالة الأمر الأخير
تم التنفيذ ، أو صفر ، إذا لم يتم تنفيذ أي أمر.

بدء التشغيل ملفات
لمعرفة الموقع الفعلي لهذه الملفات ، انظر FILES. تقوم قذيفة تسجيل الدخول بمعالجة النظام
الملف الشخصي أولا. ثم تقوم قذيفة ذات امتياز بمعالجة ملف تعريف suid. تسجيل دخول غير مميز
يقوم shell بمعالجة ملف تعريف المستخدم بعد ذلك. تقوم قذيفة تفاعلية غير مميزة بفحص القيمة
من المعلمة ENV بعد إخضاعها للمعامل والأمر والحساب والتيلدا ('~')
الاستبدال؛ إذا لم يتم ضبطه أو فارغًا ، تتم معالجة ملف تعريف المستخدم mkshrc ؛ خلاف ذلك ، إذا كان الملف
الذي يكون اسمه نتيجة الاستبدال موجود ، تتم معالجته ؛ عدم الوجود هو بصمت
تجاهله. تقوم shell ذات الامتيازات بعد ذلك بإسقاط الامتيازات إذا لم يكن أي من الامتيازات -p الخيار المعطى على
سطر الأوامر ولا يتم تعيينه أثناء تنفيذ ملفات بدء التشغيل.

أمر بناء الجملة
تبدأ الصدفة بتحليل مدخلاتها عن طريق إزالة أي تركيبات خط مائل عكسي وسطر جديد ، بعد ذلك
تقسيمها إلى كلمات. الكلمات (التي هي عبارة عن تسلسل من الأحرف) محددة بغير مقتبس
أحرف المسافات البيضاء (مسافة وعلامة جدولة وسطر جديد) أو أحرف وصفية ('<'، '>'، '|'، '؛'، '('،
')'، و '&'). بصرف النظر عن تحديد الكلمات ، يتم تجاهل المسافات وعلامات التبويب ، بينما يتم تجاهل الأسطر الجديدة
عادة أوامر التحديد. يتم استخدام الأحرف الوصفية في بناء ما يلي رموز:
تُستخدم '<' ، '<&' ، '<<' ، '<<<' ، '>' ، '> &' ، '>>' ، '&>' ، وما إلى ذلك لتحديد عمليات إعادة التوجيه (راجع
الإدخال / الإخراج إعادة توجيه أقل)؛ '|' يستخدم لإنشاء خطوط الأنابيب ؛ يتم استخدام '| &' لإنشاء
العمليات (انظر العمليات المشتركة أقل)؛ "؛" يستخدم لفصل الأوامر ؛ يتم استخدام "&" في الإنشاء
خطوط الأنابيب غير المتزامنة "&&" و "||" تستخدم لتحديد التنفيذ المشروط ؛ '؛؛'، '؛ &'
و '؛ |' تستخدم في حقيبة صياغات؛ يستخدم '((..))' في التعبيرات الحسابية؛ و
أخيرًا ، يتم استخدام "(..)" لإنشاء مجموعات فرعية.

يمكن اقتباس المسافات البيضاء والأحرف الوصفية بشكل فردي باستخدام شرطة مائلة للخلف ("\") ، أو في
المجموعات التي تستخدم علامات الاقتباس المزدوجة ("") أو المفردة ("" "). لاحظ أن الأحرف التالية هي
تعامل أيضًا بشكل خاص من خلال الغلاف ويجب ذكرها إذا كان يتعين عليهم تمثيل أنفسهم:
'\' و '' 'و' '' و '#' و '$' و '' 'و' ~ 'و' {'و'} 'و' * 'و'؟ 'و' ['. الثلاثة الأولى من هؤلاء
هي أحرف الاقتباس المذكورة أعلاه (انظر نقلا عن أقل)؛ "#" ، إذا تم استخدامها في
في بداية الكلمة ، يتم إدخال تعليق - كل شيء بعد علامة "#" وصولاً إلى الأقرب
تم تجاهل الخط الجديد. يُستخدم '$' لإدخال المعلمة والأمر والحساب
بدائل (انظر الاستبدال أقل)؛ يقدم '' 'استبدال أوامر من النمط القديم
(انظر الاستبدال أقل)؛ يبدأ "~" توسيع الدليل (انظر تيلدا توسع أقل)؛ "{"
و "}" محدد مستشفى الدعم القتالي(1) تناوب النمط (انظر دعامة توسع أقل)؛ وأخيرًا ، "*" ،
يتم استخدام '؟' و '[' في إنشاء اسم الملف (راجع قم بتقديم الاسم أنماط أدناه).

عندما يتم تحليل الكلمات والرموز المميزة ، تُنشئ الصدفة أوامر ، يوجد منها أمران أساسيان
أنواع: أوامر بسيطة، عادةً البرامج التي يتم تنفيذها ، و أوامر مركبة، هذا
as For و if جمل وتكوينات التجميع وتعريفات الوظائف.

يتكون الأمر البسيط من مجموعة من تعيينات المعلمات (انظر المعلمات
أدناه) ، إعادة توجيه الإدخال / الإخراج (انظر الإدخال / الإخراج الموجهات أدناه) ، وكلمات الأمر ؛
القيد الوحيد هو أن تعيينات المعلمات تأتي قبل أي كلمات أوامر. ال
تحدد كلمات الأمر ، إن وجدت ، الأمر الذي سيتم تنفيذه ووسائطه. ال
قد يكون الأمر عبارة عن أمر مضمن في shell ، أو وظيفة ، أو أمرًا خارجيًا (على سبيل المثال ، أمر منفصل
ملف قابل للتنفيذ يقع باستخدام المعلمة PATH ؛ يرى أمر أدناه).
لاحظ أن جميع تركيبات الأوامر لها حالة خروج: للأوامر الخارجية ، هذا مرتبط
إلى الحالة التي أرجعها انتظر(2) (إذا تعذر العثور على الأمر ، فإن حالة الخروج هي
127 ؛ إذا تعذر تنفيذه ، فإن حالة الخروج هي 126) ؛ حالة الخروج من أمر آخر
التركيبات (الأوامر المدمجة ، الوظائف ، الأوامر المركبة ، خطوط الأنابيب ، القوائم ، إلخ) كلها
محددة جيدًا ويتم وصفها حيث يتم وصف البنية. حالة الخروج من أ
الأمر الذي يتكون فقط من تعيينات المعلمات هو آخر استبدال للأمر
تم إجراؤها أثناء تعيين المعلمة أو 0 إذا لم تكن هناك استبدالات للأوامر.

يمكن ربط الأوامر معًا باستخدام "|" رمزًا مميزًا لتشكيل خطوط الأنابيب ، حيث يكون
الإخراج القياسي لكل أمر ولكن الأخير هو الأنابيب (انظر أنبوب(2)) للإدخال القياسي لـ
الأمر التالي. حالة الخروج من خط الأنابيب هي حالة الأمر الأخير ، ما لم يكن
ال الأنابيب تم تعيين الخيار (انظر هناك). يتم تنفيذ جميع أوامر خط الأنابيب بشكل منفصل
قذائف فرعية. هذا مسموح به بواسطة POSIX ولكنه يختلف عن كلا متغيري AT&T UNIX KSH، حيث
تم تنفيذ جميع الأوامر باستثناء الأمر الأخير في مجموعات فرعية ؛ انظر اقرأ وصف المدمج لـ
الآثار والحلول. قد يكون خط الأنابيب مسبوقًا بـ "!" كلمة محجوزة
يؤدي إلى استكمال حالة الخروج من خط الأنابيب منطقيًا: إذا كانت الحالة الأصلية
كانت 0 ، ستكون الحالة التكميلية 1 ؛ إذا كانت الحالة الأصلية ليست 0 ، تكملة
سيكون الوضع 0.

قوائم يمكن إنشاء الأوامر عن طريق فصل خطوط الأنابيب بأي من الرموز المميزة التالية:
'&&'، '||'، '&'، '| &'، و '؛'. الأول والثاني للتنفيذ المشروط:cmd1 && cmd2"
ينفذ cmd2 فقط إذا كانت حالة الخروج من cmd1 صفر '||' هو العكس - cmd2 is
يتم تنفيذه فقط إذا كانت حالة الخروج من cmd1 غير صفري. "&&" و "||" لها أسبقية متساوية
وهو أعلى من "&" و "| &" و "؛" ، والتي لها أسبقية متساوية أيضًا. ملحوظة
أن "&&" و "||" المشغلين "اليسار النقابي". على سبيل المثال ، كلاهما
ستطبع الأوامر "شريط" فقط:

$ false && echo foo || شريط الصدى
$ صحيح || echo foo && echo bar

يتسبب الرمز '&' في تنفيذ الأمر السابق بشكل غير متزامن ؛ هذا هو ، القشرة
يبدأ الأمر ولكنه لا ينتظر حتى يكتمل (تتعقب الصدفة ملف
حالة الأوامر غير المتزامنة ؛ يرى وظيفة مراقبة أقل). عندما يكون الأمر غير المتزامن
بدأ عند تعطيل التحكم في الوظيفة (أي في معظم البرامج النصية) ، يبدأ الأمر بـ
تم تجاهل إشارات SIGINT و SIGQUIT وإعادة توجيه المدخلات من / ديف / لاغية (لكن،
عمليات إعادة التوجيه المحددة في الأمر غير المتزامن لها الأسبقية). عامل التشغيل "| &"
يبدأ عملية مشتركة وهي نوع خاص من العمليات غير المتزامنة (انظر العمليات المشتركة
أقل). لاحظ أن الأمر يجب أن يتبع "&&" و "||" مشغلين ، في حين أنه لا داعي لذلك
اتبع "&" أو "| &" أو "؛". حالة الخروج من القائمة هي حالة آخر أمر تم تنفيذه ،
باستثناء القوائم غير المتزامنة ، التي تكون حالة الخروج فيها 0.

يتم إنشاء الأوامر المركبة باستخدام الكلمات المحجوزة التالية. هذه الكلمات فقط
تم التعرف عليها إذا كانت غير مسعرة وإذا تم استخدامها على أنها الكلمة الأولى للأمر (أي
لا يمكن أن يسبقها تعيينات المعلمات أو عمليات إعادة التوجيه):

حالة أخرى وظيفة ثم! (
قم بعمل esac إذا كان الوقت [[((
تم الانتهاء منه حتى {
أليف للتحديد أثناء}

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

$ {echo foo؛ شريط الصدى }
$ {echo foo؛ شريط الصدى }
$ {{echo foo؛ شريط الصدى }}

هذا غير صحيح:

$ {echo foo؛ شريط الصدى}

(قائمة)
تنفيذ قائمة في قشرة فرعية. لا توجد طريقة ضمنية لتمرير تغييرات البيئة من
قشرة ثانوية تعود إلى والدها.

{ قائمة؛ }
بناء مجمع قائمة تم تنفيذه ، ولكن ليس في نطاق فرعي. لاحظ أن "{" و "}"
كلمات محجوزة ، وليست أحرفًا وصفية.

حقيبة كلمة في [[(] النمط [| النمط] ...) قائمة فاصل] ... إسحاق
حقيبة محاولات البيان لمطابقة كلمة ضد محدد النمط؛ ال قائمة
المرتبط بالنمط المطابق الأول بنجاح. الأنماط المستخدمة في
حقيبة العبارات هي نفسها المستخدمة لأنماط اسم الملف باستثناء أن
القيود المتعلقة بـ "." و "/". لاحظ أن أي مساحة غير مسعرة من قبل
وبعد تجريد النمط ؛ يجب اقتباس أي مسافة داخل النمط. كلا ال
تخضع الكلمة والأنماط للمعلمة والأمر والاستبدال الحسابي ،
وكذلك استبدال التلدة.

لأسباب تاريخية ، يمكن استخدام الأقواس المفتوحة والمغلقة بدلاً من in و ESAC على سبيل المثال
حقيبة $ فو { *) صدى شريط ;; }.

القائمة فاصلق هي:

'؛؛' إنهاء بعد القائمة.

'؛ &' ادخل إلى القائمة التالية.

'؛ |' قم بتقييم مجموعات قائمة الأنماط المتبقية.

حالة الخروج من أ حقيبة البيان هو أن من أعدم قائمة؛ إذا كان الجواب لا قائمة is
أعدم ، حالة الخروج هي صفر.

For الاسم [في كلمة ...] ؛ يفعل قائمة؛ انتهى
لكل كلمة في قائمة الكلمات المحددة ، المعلمة الاسم تم تعيينه على الكلمة و
قائمة يتم تنفيذ. لو in لا تستخدم لتحديد قائمة الكلمات ، المعلمات الموضعية
($ 1 ، $ 2 ، إلخ.) يتم استخدامها بدلاً من ذلك. لأسباب تاريخية ، قد تكون الأقواس المفتوحة والمغلقة
تستخدم بدلا من do و فعل على سبيل المثال For i; { صدى أنا $ ؛ }. حالة الخروج من أ For
البيان هو حالة الخروج الأخيرة من قائمة؛ إذا قائمة لم يتم تنفيذ حالة الخروج
صفر.

if قائمة؛ ثم قائمة؛ [أليف قائمة؛ ثم قائمة؛] ... [آخر قائمة؛] فاي
إذا كانت حالة الخروج من أول قائمة هو صفر ، والثاني قائمة يتم تنفيذ؛ خلاف ذلك،
ال قائمة بعد أليف، إن وجد ، يتم تنفيذه مع عواقب مماثلة. أنا أسقط
القوائم التالية if و أليفs فشل (أي خروج بحالة غير صفرية) ، فإن قائمة
بعد آخر يتم تنفيذ. حالة الخروج من if البيان هو أن من غير
شرطي قائمة يتم تنفيذه إذا لم يكن غير مشروط قائمة يتم تنفيذ الخروج
الحالة صفر.

حدد الاسم [في كلمة ...] ؛ يفعل قائمة؛ انتهى
حدد يوفر البيان طريقة تلقائية لتقديم قائمة للمستخدم
والاختيار منها. قائمة معدودة من المحدد كلمة(ق) مطبوعة على
خطأ قياسي ، متبوعًا بمطالبة (PS3: عادةً "#؟"). رقم مطابق لـ
ثم تُقرأ إحدى الكلمات التي تم تعدادها من الإدخال القياسي ، الاسم تم تعيين ل
الكلمة المحددة (أو عدم ضبطها إذا كان التحديد غير صالح) ، يتم تعيين REPLY إلى ما تمت قراءته
(يتم تجريد المسافة البادئة / اللاحقة) ، و قائمة يتم تنفيذ. إذا كان سطر فارغ (أي
صفر أو أكثر من ثماني بتات IFS) ، تتم إعادة طباعة القائمة بدون تنفيذ قائمة.

متى قائمة اكتمال ، تتم طباعة القائمة التي تم تعدادها إذا كانت REPLY NULL ، تكون المطالبة
مطبوعة ، وما إلى ذلك. تستمر هذه العملية حتى تتم قراءة نهاية الملف ، مقاطعة
تم استلامه ، أو أ استراحة يتم تنفيذ العبارة داخل الحلقة. إذا كان "في كلمة ..."
إذا تم حذفها ، يتم استخدام المعلمات الموضعية (مثل $ 1 ، $ 2 ، إلخ). للتاريخ
الأسباب ، يمكن استخدام الأقواس المفتوحة والمغلقة بدلاً من do و فعل على سبيل المثال حدد i; {
صدى أنا $ ؛ }. حالة الخروج من أ حدد البيان هو صفر إذا أ استراحة البيان هو
تستخدم للخروج من الحلقة ، غير الصفر خلاف ذلك.

حتى قائمة؛ فعل قائمة؛ انتهى
هذا يعمل مثل في حين، باستثناء أن الجسم يتم تنفيذه فقط أثناء حالة الخروج من
أول قائمة غير صفري.

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

وظيفة الاسم { قائمة؛ }
يحدد الوظيفة الاسم (انظر وظائف أقل). لاحظ أن عمليات إعادة التوجيه المحددة
بعد تنفيذ تعريف الوظيفة كلما تم تنفيذ الوظيفة ، وليس عندما
يتم تنفيذ تعريف الوظيفة.

الاسم() أمر
في الغالب نفس وظيفة (انظر وظائف أقل). مسافة بيضاء (مسافة أو علامة جدولة) بعد
الاسم سيتم تجاهله معظم الوقت.

وظيفة الاسم() { قائمة؛ }
كمثل الاسم() (سحقISM). ال وظيفة تم تجاهل الكلمة الأساسية.

الوقت [-p] [خط أنابيب]
أمر يصف القسم الوقت كلمة محجوزة.

(( التعبير ))
التعبير الحسابي التعبير تم التقييم؛ يعادل "دع التعبير" (انظر
علم الحساب التعبيرات و اسمحوا الأمر أدناه) في بناء مركب.

[[ التعبير ]]
وعلى غرار تجربه بالعربي و [ ] الأوامر (الموصوفة لاحقًا) ، مع ما يلي
استثناءات:

· لا يتم تنفيذ تقسيم الحقل وإنشاء اسم الملف على الوسائط.

·-a (و و -o يتم استبدال عوامل (OR) بـ "&&" و "||" ، على التوالي.

· عوامل التشغيل (على سبيل المثال '-f'،' = '،'! ') يجب أن تكون غير مقتبسة.

· يتم تنفيذ المعاملات والأوامر والاستبدالات الحسابية كتعبيرات
يتم استخدام تقييم التعبيرات التي تم تقييمها والكسول في "&&" و "||" العاملين.
هذا يعني أنه في البيان التالي ، $ ( يتم تقييمه إذا وفقط إذا
الملف فو موجود وقابل للقراءة:

$ [[-r foo && $ (

· المعامل الثاني للتعبيرات '! =' و '=' عبارة عن مجموعة فرعية من الأنماط (على سبيل المثال
المقارنة [[ فوبار = و * ص ]] ينجح). هذا حتى يعمل بشكل غير مباشر:

شريط $ = foobar؛ باز = 'f * r'
$ [[$ bar = $ baz]] ؛ صدى $؟
$ [[$ bar = "$ baz"]]؛ صدى $؟

ربما من المدهش أن تنجح المقارنة الأولى ، في حين أن الثانية لا تنجح.
لا ينطبق هذا على جميع الأحرف الأولية لـ extglob حاليًا.

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

إذا كانت السلسلة ذات علامات الاقتباس المفردة مسبوقة بتوسيع مائل عكسي بنمط C غير مسعور "$" (راجع
أدناه) (حتى أحرف الاقتباس المفردة بالداخل يمكن تخطيها ولا تنتهي
السلسلة ثم) ؛ يتم التعامل مع النتيجة الموسعة كأي سلسلة أخرى ذات علامات اقتباس مفردة. اذا كان
السلسلة ذات علامات الاقتباس المزدوجة مسبوقة بـ "$" غير مسعور ، ويتم تجاهل "$" ببساطة.

مائل توسع
في الأماكن التي يتم فيها توسيع الخطوط المائلة العكسية ، هناك C و AT&T UNIX KSH أو جنو سحق نمط
يتم ترجمة الهروب. تتضمن هذه "\ a" ، "\ b" ، "\ f" ، "\ n" ، "\ r" ، "\ t" ، "\ U ########" ،
"\ u ####" و "\ v". بالنسبة إلى "\ U ########" و "\ u ####" ، تعني "#" رقمًا سداسيًا عشريًا من هذا
قد لا يكون هناك ما يصل إلى أربعة أو ثمانية ؛ تؤدي عمليات الهروب هذه إلى ترجمة نقطة تشفير Unicode إلى UTF-8.
علاوة على ذلك ، يتم توسيع "\ E" و "\ e" لتشمل حرف الهروب.

في مجلة طباعة الوضع المدمج و "\" و "\" و "\" مستبعدة صراحة ؛ التسلسلات الثماني
يجب ألا تحتوي على أي رقم يصل إلى ثلاثة أرقام ثماني "#" مسبوقة بالرقم صفر ('\ 0 ###') ؛
التسلسلات السداسية العشرية '\ x ##' تقتصر على ما يصل إلى رقمين سداسي عشريين "#" ؛ كلاهما
يتم تحويل التسلسلات الثماني والست عشري إلى ثماني بتات خام ؛ "\ #" ، حيث لا يوجد أي مما سبق ،
يترجم إلى \ # (يتم الاحتفاظ بالخط المائل العكسي).

يختلف توسيع الخط المائل العكسي في وضع النمط C قليلاً: يجب أن يكون للتسلسلات الثمانيّة '\ ###'
لا يوجد رقم صفر يسبق الرقم حتى ثلاثة أرقام ثماني "#" وينتج ثماني بتات خام ؛
التتابعات السداسية العشرية "\ x # *" ​​تلتهم بجشع أكبر عدد ممكن من الأرقام السداسية العشرية "#" بقدر ما تستطيع و
تنتهي بأول رقم غير سداسي عشري ؛ هذه ترجمة كود Unicode إلى
UTF-8. يُترجم التسلسل "\ c #" ، حيث يمثل "#" أي ثماني بتات ، إلى Ctrl- # (والذي في الأساس
يعني ، "ج؟" يصبح DEL ، كل شيء آخر هو أحادي المعامل ANDed مع 0x1F). أخيرًا ، "\ #" ، أين
# ليس مما سبق ، يترجم إلى # (تم قص الخط المائل العكسي) ، حتى لو كان
خط جديد.

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

يتم تحديد الأسماء المستعارة للأوامر التالية تلقائيًا بواسطة shell:

التحميل التلقائي = 'typeet -fu'
الوظائف = 'typeet -f'
تجزئة = '\ اسم مستعار مدمج -t'
history = 'مدمج fc -l'
عدد صحيح = 'typeet -i'
محلي = 'typeet'
تسجيل الدخول = '\ exec login'
الاسم = 'typeet -n'
nohup = "nohup"
r = '\ Builtin fc -e -'
اكتب = 'مدمج من أين -v'

تسمح الأسماء المستعارة المتعقبة للصدفة بتذكر مكان وجود أمر معين. الأول
الوقت الذي تقوم فيه الصدفة بالبحث عن مسار عن أمر تم وضع علامة عليه كاسم مستعار متتبع ، فإنه يحفظ
المسار الكامل للأمر. في المرة التالية التي يتم فيها تنفيذ الأمر ، يتحقق shell من ملف
المسار المحفوظ لمعرفة أنه لا يزال صالحًا ، وإذا كان الأمر كذلك ، يتجنب تكرار البحث عن المسار.
يمكن سرد الأسماء المستعارة المتعقبة وإنشاءها باستخدام الاسم المستعار -t. لاحظ أن تغيير المسار
تمسح المعلمة المسارات المحفوظة لجميع الأسماء المستعارة المتعقبة. إذا كان تراكول تم تعيين الخيار
(أي طقم -o تراكول or طقم -h) ، تتعقب القشرة جميع الأوامر. تم تعيين هذا الخيار
تلقائيًا للأصداف غير التفاعلية. للأصداف التفاعلية ، ما يلي فقط
يتم تعقب الأوامر تلقائيًا: قط(1) cc(1) شمود(1) cp(1) تاريخ(1) ed(1)
ايماكس(1) البقرى(1) ls(1) جعل(1) mv(1) pr(1) rm(1) عطش(1) sh(1) vi(1)، و الذي(1).

الاستبدال
الخطوة الأولى التي تتخذها الصدفة في تنفيذ أمر بسيط هي إجراء الاستبدالات على
كلام الأمر. هناك ثلاثة أنواع من الاستبدال: المعلمة ، والأمر ، و
علم الحساب. بدائل المعلمات الموضحة بالتفصيل في القسم التالي ،
خذ النموذج $الاسم أو $ { } ؛ تأخذ استبدالات الأوامر الشكل $ (أمر) أو
(مهملة) `أمر`أو (تم تنفيذه في البيئة الحالية) $ { أمر؛} والقطاع
خطوط جديدة لاحقة والبدائل الحسابية تأخذ شكل $ ((التعبير)). تحليل
يتطلب استبدال أوامر البيئة الحالية مسافة أو علامة تبويب أو سطر جديد بعد الفتح
قوس وأن يتم التعرف على قوس الإغلاق ككلمة رئيسية (أي يسبقه سطر جديد
أو فاصلة منقوطة). يطلق عليهم أيضًا اسم funsubs (بدائل الوظيفة) ويتصرفون مثل
وظائف في ذلك محلي و عائد أعلى العمل ، وفي ذلك خروج ينهي قشرة الوالد ؛ صدَفَة
الخيارات مشتركة.

البديل الآخر للتعويض هو valsubs (بدائل القيمة) $ {|أمر؛} و هو
يتم تنفيذها أيضًا في البيئة الحالية ، مثل funsubs ، ولكن مشاركة I / O مع الوالدين ؛
بدلاً من ذلك ، يقومون بتقييم المتغير المحلي للتعبير الفارغ في البداية REPLY
تعيين لداخل أمرs.

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

مثال: إذا تم تعيين IFS على " : "، و VAR مضبوط على
" أ : B :: D "، ينتج عن استبدال $ VAR أربعة حقول:" A "،
"B" و "(حقل فارغ) و" D ". لاحظ أنه إذا تم تعيين معلمة IFS على القيمة الفارغة
سلسلة ، لا يتم إجراء تقسيم المجال ؛ إذا لم يتم ضبطها ، فإن القيمة الافتراضية للمسافة وعلامة التبويب و
تم استخدام newline.

لاحظ أيضًا أن تقسيم الحقل ينطبق فقط على النتيجة المباشرة لـ
الاستبدال. باستخدام المثال السابق ، فإن استبدال $ VAR: E ينتج عنه
الحقول: "A" و "B" و "" و "D: E" وليس "A" و "B" و "" و "D" و "E". هذا السلوك هو POSIX
متوافق ، ولكنه غير متوافق مع بعض تطبيقات الصدفة الأخرى التي تقوم بتقسيم المجال
على الكلمة التي تحتوي على الاستبدال أو استخدم IFS كمحدد عام للمسافات البيضاء.

نتائج الاستبدال تخضع أيضًا لتوسيع الدعامة ، ما لم يتم تحديد خلاف ذلك
وتوسيع اسم الملف (انظر الأقسام ذات الصلة أدناه).

يتم استبدال استبدال الأمر بالمخرجات التي تم إنشاؤها بواسطة الأمر المحدد وهو
تشغيل في subshell. مقابل $ (أمر) و $ {|أمر؛} و $ { أمر؛} بدائل عادية
يتم استخدام قواعد الاقتباس عندما أمر محلل ومع ذلك ، من أجل المهملأمرشكل ، أ
يتم تجريد '\' متبوعًا بأي من '$' أو '' أو '\' (كما هو '' 'عندما يكون الاستبدال جزءًا
لسلسلة ذات علامات اقتباس مزدوجة) ؛ الشرطة المائلة للخلف "\" متبوعة بأي حرف آخر لم يتغير.
كحالة خاصة في استبدالات الأوامر ، أمر النموذجملف يتم تفسيره ل
يعني استبدال محتويات ملف. لاحظ أن $ ( له نفس تأثير $ (قطة فو).

لاحظ أن بعض الأصداف لا تستخدم محللًا تكراريًا لاستبدال الأوامر ، مما يؤدي إلى
فشل بعض التركيبات ؛ لتكون محمولة ، استخدم كحل بديل 'x = $ (cat) << "EOF"' (أو ملف
newline -keeping 'x = << "EOF"' extension) بدلاً من ذلك لمجرد slurp السلسلة. IEEE Std 1003.1
يوصي ("POSIX.1") باستخدام عبارات الحالة بالصيغة 'x = $ (case $ foo in (bar) echo $ bar
؛؛ (*) echo $ baz ؛؛ esac) 'بدلاً من ذلك ، والتي ستعمل ولكنها لن تكون بمثابة مثال على ذلك
قضية قابلية.

x = $ (case $ foo in bar) echo $ bar ؛؛ *) صدى $ baz ؛؛ esac)
# أعلاه فشل في التحليل على الأصداف القديمة ؛ أدناه هو الحل
x = $ (Eval $ (cat)) << "EOF"
case $ foo في الشريط) echo $ bar ؛؛ *) صدى $ baz ؛؛ esac
EOF

يتم استبدال البدائل الحسابية بقيمة التعبير المحدد. ل
على سبيل المثال ، الأمر طباعة دولار ((2 + 3 * 4)) يعرض 14. انظر علم الحساب التعبيرات ل
وصف التعبير.

المعلمات
المعلمات هي متغيرات قذيفة ؛ يمكن تعيين قيم لها ويمكن الوصول إلى قيمها
باستخدام استبدال المعلمة. اسم المعلمة هو إما اسم واحد خاص
علامات الترقيم أو معلمات الأحرف الرقمية الموضحة أدناه ، أو حرف متبوع بصفر أو
المزيد من الأحرف أو الأرقام (يتم احتساب "_" كحرف). يمكن معاملة الشكل الأخير كمصفوفات
من خلال إلحاق فهرس مصفوفة بالنموذج [على سبيل المثال] أين على سبيل المثال هو تعبير حسابي.
مؤشرات الصفيف بتنسيق مكش تقتصر على النطاق من 0 إلى 4294967295 ضمناً. إنه،
هم عدد صحيح بدون إشارة 32 بت.

تأخذ استبدالات المعلمات الصيغة $الاسم، $ {الاسم} أو $ {الاسم[على سبيل المثال]} أين الاسم هو
اسم المعلمة. استبدال جميع عناصر المصفوفة بـ $ {الاسم[*]} و $ {الاسم[@]} يعمل
ما يعادل $ * و $ @ للمعلمات الموضعية. إذا تم إجراء الاستبدال على
معلمة (أو عنصر معلمة صفيف) لم يتم تعيينها ، يتم استبدال سلسلة فارغة
ما لم يكن اسم اختيار (طقم -o اسم or طقم -u) ، وفي هذه الحالة يحدث خطأ.

يمكن تعيين قيم للمعلمات بعدة طرق. أولاً ، يتم وضع القشرة ضمنيًا
بعض المعلمات مثل "#" و "PWD" و "$" ؛ هذه هي الطريقة الوحيدة للحرف الفردي الخاص
يتم تعيين المعلمات. ثانيًا ، يتم استيراد المعلمات من بيئة الغلاف في
بدء. ثالثًا ، يمكن تعيين قيم للمعلمات في سطر الأوامر: على سبيل المثال ، FOO = شريط
يضبط المعلمة "FOO" على "شريط" ؛ يمكن إعطاء تخصيصات متعددة المعلمات على ملف واحد
سطر الأوامر ويمكن أن يتبعها أمر بسيط ، وفي هذه الحالة تكون التعيينات
ساري المفعول فقط لمدة الأمر (يتم أيضًا تصدير هذه التخصيصات ؛ راجع
أدناه لتأثيرات هذا). لاحظ أن كلا من اسم المعلمة و "=" يجب أن يكونا
غير مقتبس لصدفة للتعرف على تعيين المعلمة. البناء FOO + = باز هو أيضا
معروف؛ القيم القديمة والجديدة متسلسلة على الفور. الطريقة الرابعة لتحديد
المعلمة مع تصدير, شامل, للقراءة فقطو منضدة أوامر. انظر بهم
الأوصاف في أمر قسم. خامسا For و حدد حلقات تعيين المعلمات
فضلا عن com.getopts, اقرأو طقم -A أوامر. أخيرًا ، يمكن تعيين المعلمات
القيم باستخدام عوامل الإسناد داخل التعبيرات الحسابية (انظر علم الحساب التعبيرات
أدناه) أو باستخدام $ {الاسم=قيمنا} لاستبدال المعلمة (انظر أدناه).

المعلمات مع سمة التصدير (يتم تعيينها باستخدام ملف تصدير or منضدة -x أوامر ، أو عن طريق
يتم وضع تعيينات المعلمات متبوعة بأوامر بسيطة) في البيئة (انظر
اكتنف(7)) للأوامر التي تديرها shell كـ الاسم=قيمنا أزواج. الترتيب الذي المعلمات
تظهر في بيئة أمر غير محدد. عندما تبدأ القشرة ، فإنها
يستخرج المعلمات وقيمها من بيئتها ويعين التصدير تلقائيًا
السمة لتلك المعلمات.

يمكن تطبيق المُعدِّلات على $ {الاسم} شكل استبدال المعلمة:

${الاسم:-كلمة}
If الاسم تم تعيينه وليس NULL ، يتم استبداله ؛ خلاف ذلك، كلمة تم استبداله.

${الاسم:+كلمة}
If الاسم تم تعيينه وليس NULL ، كلمة تم استبداله خلاف ذلك ، لا يتم استبدال أي شيء.

${الاسم:=كلمة}
If الاسم تم تعيينه وليس NULL ، يتم استبداله ؛ خلاف ذلك ، يتم تعيينه كلمة و
القيمة الناتجة من الاسم تم استبداله.

${الاسم:?كلمة}
If الاسم تم تعيينه وليس NULL ، يتم استبداله ؛ خلاف ذلك، كلمة تتم طباعته على
خطأ معياري (مسبوق بـ الاسم:) ويحدث خطأ (يتسبب عادةً في الإنهاء
من نص شل أو وظيفة أو نص برمجي مصدره "." مدمج). لو كلمة is
إذا تم حذفها ، يتم استخدام السلسلة "معلمة فارغة أو لم يتم تعيينها" بدلاً من ذلك. حاليًا خطأ ،
if كلمة هو متغير يمتد إلى سلسلة فارغة ، رسالة الخطأ هي أيضًا
المطبوعة.

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

في المعدلات أعلاه ، يمكن حذف ":" ، وفي هذه الحالة تعتمد الشروط فقط على
الاسم يتم تعيينها (على عكس التعيين وليس NULL). لو كلمة مطلوب ، معلمة ، أمر ،
الحساب ، ويتم إجراء استبدال التلدة عليه ؛ لو كلمة ليست هناك حاجة ، فهي ليست كذلك
مقيمة.

يمكن أيضًا استخدام الأشكال التالية لاستبدال المعلمات (if الاسم هو مصفوفة ، و
عنصر بالمفتاح "0" سيتم استبداله في سياق عددي):

{# دولارالاسم}
عدد المعلمات الموضعية إذا الاسم هو "*" أو "@" أو غير محدد ؛ خلاف ذلك
طول (بالأحرف) قيمة سلسلة المعلمة الاسم.

{# دولارالاسم[*]}
{# دولارالاسم[@]}
عدد العناصر في المصفوفة الاسم.

{٪ دولارالاسم}
العرض (في أعمدة الشاشة) لقيمة سلسلة المعلمة الاسم، أو -1 إذا
${الاسم} يحتوي على حرف تحكم.

$ {!الاسم}
اسم المتغير المشار إليه بواسطة الاسم. هذا سيكون الاسم إلا عندما الاسم is
مرجع الاسم (متغير منضم) ، تم إنشاؤه بواسطة الاسم الأمر (وهو اسم مستعار
For منضدة -n).

$ {!الاسم[*]}
$ {!الاسم[@]}
أسماء الفهارس (المفاتيح) في المصفوفة الاسم.

${الاسم#النمط}
${الاسم##النمط}
If النمط يطابق بداية قيمة المعلمة الاسم، النص المطابق هو
تم حذفه من نتيجة الاستبدال. ينتج عن كلمة "#" واحدة في الأقصر
مباراة ، وينتج عن اثنين منهم أطول مباراة. لا يمكن تطبيقه على متجه
($ {*} أو $ {@} أو $ {array [*]} أو $ {array [@]}).

${الاسم%النمط}
${الاسم%%النمط}
مثل استبدال $ {.. # ..} ، لكنه يحذف من نهاية القيمة. لا يمكن
تطبق على متجه.

${الاسم/نمط / سلسلة}
${الاسم/#نمط / سلسلة}
${الاسم/%نمط / سلسلة}
${الاسم//نمط / سلسلة}
أطول مباراة النمط في قيمة المعلمة الاسم يتم استبداله بـ سلسلة
(تم حذفه إذا سلسلة فارغ؛ قد يتم حذف الشرطة المائلة اللاحقة ("/") في هذه الحالة).
تؤدي الشرطة المائلة البادئة متبوعة بـ "#" أو "٪" إلى إرساء النمط في
بداية القيمة أو نهايتها ، على التوالي ؛ فارغة غير مقيدة النمطق سبب لا
إستبدال؛ شرطة مائلة واحدة أو استخدام النمط يطابق الفراغ
تتسبب السلسلة في حدوث الاستبدال مرة واحدة فقط ؛ شرطان مائلتان يؤديان إلى كل شيء
تكرارات التطابقات في القيمة المراد استبدالها. لا يمكن تطبيقه على متجه.
نفذت بشكل غير فعال ، قد تكون بطيئة.

${الاسم:بعد:ليون}
أول ليون شخصيات الاسم، بدءًا من الموضع بعد، يتم استبدالها. كلاهما
بعد و:ليون اختيارية. لو بعد سلبي ، يبدأ العد في نهاية
خيط؛ إذا تم حذفه ، فسيكون القيمة الافتراضية 0. إذا ليون محذوف أو أكبر من
طول السلسلة المتبقية ، يتم استبدالها كلها. كلاهما بعد و ليون .
تقييمها على أنها تعبيرات حسابية. حالياً، بعد يجب أن تبدأ بمسافة ،
فتح قوس أو رقم ليتم التعرف عليه. لا يمكن تطبيقه على متجه.

${الاسم@ #}
تجزئة (باستخدام خوارزمية BAFH) لتوسيع نطاق الاسم. يستخدم هذا أيضًا
داخليًا لعلامات التجزئة الخاصة بالصدفة.

${الاسمQ}
تعبير مقتبس آمن لإعادة الإدخال ، قيمته هي قيمة الاسم
تم استبدال المعلمة.

نلاحظ أن النمط قد تحتاج إلى نمط خفقان ممتد (@ (...)) مفرد ('...') أو مزدوج
("...") الاقتباس الهروب ما لم -o sh تم تعيينه.

يتم تعيين المعلمات الخاصة التالية بشكل ضمني بواسطة الغلاف ولا يمكن تعيينها مباشرة
باستخدام الواجبات:

! بدأ معرّف العملية لآخر عملية في الخلفية. إذا لم يكن هناك عمليات خلفية لها
بدأت ، لم يتم تعيين المعلمة.

# عدد المعلمات الموضعية (1 دولار ، 2 دولار ، إلخ).

$ PID الخاص بالصدفة ، أو PID الخاص بالصدفة الأصلية إذا كان قشرة فرعية. يفعل لا
استخدام هذه الآلية لتوليد أسماء الملفات المؤقتة ؛ يرى com.mktemp(1) بدلا من ذلك.

- تسلسل خيارات الحرف الواحد الحالية (راجع ملف طقم الأمر أدناه
للحصول على قائمة الخيارات).

؟ حالة الخروج لآخر أمر غير متزامن تم تنفيذه. إذا كان الأمر الأخير
قُتل بإشارة ، $? تم ضبطه على 128 بالإضافة إلى رقم الإشارة ، ولكن على الأكثر 255.

0 اسم الغلاف ، محددًا على النحو التالي: الوسيطة الأولى لـ مكش إذا كانت
استدعى مع -c أعطيت الخيار والحجج. وإلا فإن ملف حجة ، إذا
تم توفيره أو تم استدعاء الاسم الأساسي للقذيفة مع (ie argv [0]). 0 دولار
تم تعيينه أيضًا على اسم البرنامج النصي الحالي أو اسم الوظيفة الحالية ،
إذا تم تعريفه بامتداد وظيفة الكلمة الرئيسية (مثل وظيفة نمط Korn shell).

1 .. 9 المعلمات الموضعية التسعة الأولى التي تم توفيرها للقذيفة أو الوظيفة أو
مصدر البرنامج النصي باستخدام "." مدمج. مزيد من المعلمات الموضعية قد تكون
الوصول إليها باستخدام $ {عدد}.

* جميع المعلمات الموضعية (باستثناء 0) ، مثل $ 1 ، $ 2 ، $ 3 ، ...
إذا تم استخدامها خارج علامات الاقتباس المزدوجة ، فإن المعلمات هي كلمات منفصلة (والتي تخضع
لتقسيم الكلمة) ؛ إذا تم استخدامها ضمن علامات اقتباس مزدوجة ، يتم فصل المعلمات بواسطة
الحرف الأول من معلمة IFS (أو السلسلة الفارغة إذا كانت IFS فارغة).

@ مثل $*، ما لم يتم استخدامها داخل علامتي اقتباس مزدوجتين ، ففي هذه الحالة تكون الكلمة المنفصلة
ولدت لكل معلمة موضعية. إذا لم تكن هناك معلمات موضعية ، فلا
تم إنشاء كلمة. $@ يمكن استخدامها للوصول إلى الحجج ، حرفيا ، دون خسارة
وسيطات NULL أو تقسيم الوسائط بمسافات.

يتم تعيين المعلمات التالية و / أو استخدامها بواسطة الغلاف:

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

BASHPID معرف الغلاف أو الغلاف الفرعي.

CDPATH Like PATH ، ولكنها تستخدم لحل الوسيطة إلى cd أمر مدمج. ملحوظة
أنه إذا تم تعيين CDPATH ولا يحتوي على "." أو عنصر سلسلة فارغ ، فإن
لا يتم البحث في الدليل الحالي. أيضا ، cd سيتم عرض الأمر المدمج
الدليل الناتج عند العثور على تطابق في أي مسار بحث بخلاف
مسار فارغ.

الأعمدة قم بتعيين عدد الأعمدة في المحطة أو النافذة. دائما تعيين ، وافتراضيات
إلى 80 ، ما لم تكن القيمة كما تم الإبلاغ عنها بواسطة stty(1) غير صفري وعاقل بما فيه الكفاية
(الحد الأدنى هو 12 × 3) ؛ مماثلة لخطوط. يتم استخدام هذه المعلمة بواسطة
وسائط تحرير الخط التفاعلي ، وبواسطة حدد, طقم -oو قتل -l الأوامر
لتنسيق أعمدة المعلومات. الاستيراد من البيئة أو عدم ضبطها
تزيل هذه المعلمة الارتباط بحجم الجهاز الفعلي لصالح
القيمة المقدمة.

ENV إذا تم العثور على هذه المعلمة مضبوطة بعد تنفيذ أي ملفات ملف تعريف ، فإن ملف
يتم استخدام القيمة الموسعة كملف بدء تشغيل shell. عادة ما تحتوي على وظيفة
وتعريفات الاسم المستعار.

ERRNO قيمة عدد صحيح للقذيفة تخطئ عامل. إنه يشير إلى السبب الأخير
فشل استدعاء النظام. لم تنفذ بعد.

EXECSHELL إذا تم تعيينها ، فمن المفترض أن تحتوي هذه المعلمة على shell الذي سيتم استخدامه
تنفيذ الأوامر ممتاز(2) فشل في التنفيذ والتي لا تبدأ بـ a
"#!قذيفة" تسلسل.

FCEDIT المحرر الذي يستخدمه fc الأمر (انظر أدناه).

FPATH Like PATH ، ولكنه يُستخدم عند تنفيذ وظيفة غير محددة لتحديد موقع الملف
تحديد الوظيفة. يتم البحث عنها أيضًا عندما يتعذر العثور على أمر باستخدام
طريق. يرى وظائف أدناه لمزيد من المعلومات.

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

ملاحظات: إذا كان HISTFILE غير مضبوط أو فارغًا ، فلن يتم استخدام ملف محفوظات. هذا هو
تختلف عن AT&T UNIX KSH.

HISTSIZE عدد الأوامر المخزنة عادة للتاريخ. الافتراضي هو 2047. افعل
عدم تعيين هذه القيمة على قيم عالية بجنون مثل 1000000000 لأن مكش يمكن
ثم لا تخصص ذاكرة كافية للتاريخ ولن تبدأ.

HOME الدليل الافتراضي لملف cd الأمر والقيمة المستبدلة بـ a
غير مؤهل ~ (انظر تيلدا توسع أدناه).

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

ملاحظات: لا يتم استيراد هذه المعلمة من البيئة عندما تكون shell
بدأت.

KSHEGID معرف المجموعة الفعال للقشرة.

KSHGID معرف المجموعة الحقيقي للقشرة.

KSHUID معرف المستخدم الحقيقي للقشرة.

KSH_VERSION اسم ونسخة الصدفة (للقراءة فقط). راجع أيضًا أوامر الإصدار
in إيماكس التحرير طريقة و Vi التحرير طريقة المقاطع أدناه.

LINENO رقم سطر الوظيفة أو البرنامج النصي shell الموجود حاليًا
أعدم.

LINES اضبط على عدد الأسطر على المحطة أو النافذة. دائما تعيين ، افتراضيات إلى
24. انظر الأعمدة.

وقت إلكتروني
الوقت منذ الحقبة ، كما عاد بها com.gettimeofday(2) ، بالصيغة العشرية
tv_sec متبوعة بنقطة (".") و tv_usec مبطن بستة أرقام عشرية بالضبط
أرقام.

OLDPWD دليل العمل السابق. غير محدد إذا cd لم يتغير بنجاح
الدلائل منذ أن بدأت الصدفة ، أو إذا كانت الصدفة لا تعرف مكانها.

OPTARG عند استخدام com.getopts، فهو يحتوي على وسيطة خيار تحليل ، إذا كان
يتطلب واحد.

OPTIND فهرس الوسيطة التالية المراد معالجتها عند استخدام com.getopts. التكليف 1
لهذه المعلمة أسباب com.getopts لمعالجة الحجج من البداية
في المرة القادمة التي يتم استدعاؤها.

PATH A نقطتان (فاصلة منقوطة في OS / 2) قائمة مفصولة بالدلائل التي يتم البحث عنها
عند البحث عن أوامر وملفات مصدرها "." الأمر (انظر أدناه).
سلسلة فارغة ناتجة عن نقطتين في المقدمة أو لاحقة ، أو اثنتين متجاورتين
النقطتين ، يتم التعامل معها كـ "." (الدليل الحالي).

PGRP معرف العملية لقائد مجموعة عمليات shell.

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

PPID معرف عملية أصل shell.

PS1 الموجه الأساسي للقذائف التفاعلية. المعلمة والأمر والحساب
يتم إجراء الاستبدالات و "!" بالأمر الحالي
رقم (انظر fc الأمر أدناه). حرفيا "!" يمكن وضعها في الموجه من خلال
وضع "!!" في PS1.

المطالبة الافتراضية هي "$" للمستخدمين غير الجذر ، و "#" بالنسبة إلى الجذر. لو مكش is
تم استدعاؤه بواسطة root ولا يحتوي PS1 على حرف "#" ، القيمة الافتراضية
سيتم استخدامه حتى إذا كان PS1 موجودًا بالفعل في البيئة.

مكش التوزيع يأتي مع عينة dot.mkshrc تحتوي على ملف متطور
على سبيل المثال ، ولكن قد يعجبك المثال التالي (لاحظ ذلك
$ {HOSTNAME: = $ (hostname)} والشرط الذي يميز الجذر مقابل المستخدم هما (بتنسيق
هذا المثال) في وقت تخصيص PS1 ، بينما يتم تنفيذ $ USER و $ PWD
هربت وبالتالي سيتم تقييمها في كل مرة يتم فيها عرض مطالبة):

PS1 = '$ {USER: = $ (id -un)}' "@ $ {HOSTNAME: = $ (hostname)}: \ $ PWD $ (
إذا ((USER_ID)) ؛ ثم طباعة \ $؛ آخر طباعة \ # ؛ fi) "

لاحظ أنه منذ محرري سطر الأوامر يحاولون معرفة طول الموجه
هو (حتى يعرفوا مدى المسافة إلى حافة الشاشة) ، رموز الهروب في
موجه تميل إلى إفساد الأمور. يمكنك إخبار الصدفة بعدم الاعتماد بشكل مؤكد
التسلسلات (مثل أكواد الهروب) عن طريق بادئة موجهك بحرف
(مثل Ctrl-A) متبوعًا بحرف إرجاع ثم تحديد الهروب
رموز بهذه الشخصية. أي تكرارات لهذا الحرف في الموجه هي
لا تطبع. بالمناسبة ، لا تلومني على هذا الاختراق ؛ انها مشتقة من
أصلي شلن كيني 88(1) ، والتي طبعت حرف المحدِّد لذا فقد نفدت
الحظ إذا لم يكن لديك أي أحرف غير مطبوعة.

نظرًا لأن الخطوط المائلة العكسية والأحرف الخاصة الأخرى يمكن تفسيرها بواسطة shell ،
لضبط PS1 ، إما أن يهرب من الخط المائل العكسي نفسه ، أو يستخدم علامات الاقتباس المزدوجة. ال
الأخير هو أكثر عملية. هذا مثال أكثر تعقيدًا ، وتجنب مباشرة
أدخل أحرفًا خاصة (على سبيل المثال مع ^V في وضع تحرير emacs) ، والتي
يدمج دليل العمل الحالي ، في الفيديو العكسي (سيعمل اللون ،
أيضًا) ، في سلسلة المطالبة:

س = دولار (طباعة \\ 001)
PS1 = "$ x $ (print \\ r) $ x $ (tput so) $ x \ $ PWD $ x $ (tput se) $ x>"

بناء على اقتراح قوي من ديفيد جي كورن ، مكش يدعم الآن أيضًا
النموذج التالي:

PS1=$'\1\r\1\e[7m\1$PWD\1\e[0m\1> '

يتم استخدام سلسلة المطالبة الثانوية PS2 ، افتراضيًا ">" ، عند الحاجة إلى مزيد من المدخلات
أكمل الأمر.

موجه PS3 المستخدم بواسطة حدد بيان عند قراءة اختيار القائمة. الافتراضي
يكون '#؟ ".

يستخدم PS4 لبادئة الأوامر التي تم طباعتها أثناء تتبع التنفيذ (انظر ملف طقم
-x الأمر أدناه). المعلمات والأمر والبدائل الحسابية هي
نفذت قبل طباعتها. الافتراضي هو "+". قد ترغب في ضبطه
إلى "[$ EPOCHREALTIME]" بدلاً من ذلك ، لتضمين الطوابع الزمنية.

PWD دليل العمل الحالي. قد يكون غير محدد أو NULL إذا كان الغلاف لا يعرف
اين هى.

عشوائي في كل مرة تتم فيها الإشارة إلى RANDOM ، يتم تعيين رقم بين 0 و 32767
من PRNG المطابق الخطي أولاً.

REPLY المعلمة الافتراضية لملف اقرأ الأمر إذا لم يتم إعطاء أسماء. تستخدم أيضا في
حدد الحلقات لتخزين القيمة المقروءة من الإدخال القياسي.

SECONDS عدد الثواني منذ بدء الغلاف أو ، إذا كان المعامل قد تم
تعيين قيمة عدد صحيح ، عدد الثواني منذ التعيين بالإضافة إلى
القيمة التي تم تعيينها.

TMOUT إذا تم تعيينه على عدد صحيح موجب في غلاف تفاعلي ، فإنه يحدد الحد الأقصى
عدد الثواني التي سينتظرها الغلاف لإدخال الإدخال بعد طباعة الأساسي
موجه (PS1). إذا تم تجاوز الوقت ، يخرج الغلاف.

TMPDIR يتم إنشاء ملفات الدليل المؤقتة shell في. إذا لم تكن هذه المعلمة
تعيين أو لا يحتوي على المسار المطلق لدليل قابل للكتابة ، مؤقت
يتم إنشاء الملفات بتنسيق / تمة.

USER_ID معرف المستخدم الفعال للقشرة.

تيلدا توسع
يتم إجراء توسيع التلدة بالتوازي مع استبدال المعلمة على الكلمات
تبدأ بعلامة "~" غير مسعرة. الأحرف التي تلي التلدة ، حتى أول '/' ، إذا
أي ، يُفترض أن يكون اسم تسجيل دخول. إذا كان اسم تسجيل الدخول فارغًا ، أو "+" ، أو "-" ، فإن قيمة
يتم استبدال المعلمة HOME أو PWD أو OLDPWD ، على التوالي. خلاف ذلك ، كلمة المرور
ملف يتم البحث عن اسم تسجيل الدخول ، ويتم استبدال تعبير التلدة باسم المستخدم
الدليل الرئيسي. إذا لم يتم العثور على اسم تسجيل الدخول في ملف كلمة المرور أو إذا كان هناك أي اقتباس أو
يحدث استبدال المعلمة في اسم تسجيل الدخول ، ولا يتم إجراء أي استبدال.

في تعيينات المعلمات (مثل تلك التي تسبق أمرًا بسيطًا أو تلك التي تحدث في ملف
حجج الاسم المستعار, تصدير, شامل, للقراءة فقطو منضدة) ، يتم توسيع التلدة بعد ذلك
أي تعيين (أي بعد علامة التساوي) أو بعد نقطتين غير مسعرة (':') ؛ أسماء تسجيل الدخول
يتم أيضًا تحديدها بنقطتين.

يتم تخزين الدليل الرئيسي لأسماء تسجيل الدخول الموسعة مسبقًا وإعادة استخدامها. ال الاسم المستعار -d
يمكن استخدام الأمر لسرد ذاكرة التخزين المؤقت هذه وتغييرها والإضافة إليها (على سبيل المثال الاسم المستعار -d
fac = / usr / local / المرافق ؛ cd ~ فاك / بن).

دعامة توسع (بالتناوب)
تأخذ التعابير المعقوفة الشكل التالي:

بادئة{str1، ... ،strN}لاحقة

يتم توسيع التعبيرات إلى N الكلمات ، كل منها هو تسلسل بادئة, شارعi,
و لاحقة (على سبيل المثال ، يتم توسيع "a {c، b {X، Y}، d} e" إلى أربع كلمات: "ace" و "abXe" و "abYe" و "ade").
كما هو مذكور في المثال ، يمكن أن تتداخل تعبيرات الأقواس والكلمات الناتجة ليست كذلك
مرتبة. يجب أن تحتوي تعبيرات الأقواس على فاصلة غير مقتبسة ('،') حتى يحدث التوسع (على سبيل المثال ،
{} و {فو} لم يتم توسيعها). يتم توسيع الدعامة بعد استبدال المعلمة
وقبل إنشاء اسم الملف.

قم بتقديم الاسم أنماط
نمط اسم الملف هو كلمة تحتوي على كلمة "؟" أو "*" أو "+" أو "@" أو "!" أو أكثر غير مقتبسة.
أحرف أو تسلسلات "[..]". بمجرد إجراء توسيع الدعامة ، يتم استبدال الغلاف
أنماط اسم الملف مع الأسماء المصنفة لجميع الملفات التي تطابق النمط (إذا لم يكن الأمر كذلك
تطابق الملفات ، وتركت الكلمة دون تغيير). عناصر النمط لها المعنى التالي:

؟ يتطابق مع أي حرف واحد.

* يطابق أي تسلسل من ثماني بتات.

[..] يطابق أيًا من الثمانيات الموجودة داخل الأقواس. يمكن تحديد نطاقات الثمانيات بواسطة
فصل اثنين من ثماني بتات بواسطة "-" (على سبيل المثال "[a0-9]" يطابق الحرف "أ" أو أي رقم).
لتمثيل نفسها ، يجب اقتباس "-" أو الثمانية الأولى أو الأخيرة
في قائمة الثمانيات. وبالمثل ، يجب اقتباس "]" أو أول ثماني بتات في القائمة
إذا كانت تمثل نفسها بدلاً من نهاية القائمة. أبضا '!' الظهور
في بداية القائمة لها معنى خاص (انظر أدناه) ، وذلك لتمثيل نفسها
يجب اقتباسها أو ظهورها لاحقًا في القائمة.

[! ..] مثل [..] ، إلا أنه يتطابق مع أي ثماني بتات ليست داخل الأقواس.

*(النمط| ... |النمط)
تتطابق مع أي سلسلة من ثماني بتات تطابق صفرًا أو أكثر من التكرارات المحددة
أنماط. مثال: النمط * (foo|شريط) يطابق السلاسل "" ، "foo" ، "bar" ،
"foobarfoo" ، إلخ.

+(النمط| ... |النمط)
تتطابق مع أي سلسلة من ثماني بتات تطابق واحدًا أو أكثر من التكرارات المحددة
أنماط. مثال: النمط + (فو|شريط) يطابق السلاسل "foo" ، "bar" ،
"foobar" ، إلخ.

?(النمط| ... |النمط)
تتطابق مع السلسلة الفارغة أو السلسلة التي تطابق أحد الأنماط المحددة.
مثال: النمط ؟ (foo|شريط) يتطابق فقط مع السلاسل "" و "foo" و "bar".

@(النمط| ... |النمط)
تتطابق مع سلسلة تطابق أحد الأنماط المحددة. مثال: النمط
@ (foo|شريط) يطابق فقط السلاسل "foo" و "bar".

!(النمط| ... |النمط)
تتطابق مع أي سلسلة لا تتطابق مع أحد الأنماط المحددة. أمثلة:
النمط ! (foo|شريط) يطابق جميع السلاسل باستثناء "foo" و "bar" ؛ النمط ! (*)
لا يتطابق مع أي قيود ؛ النمط ! (؟) * يطابق جميع السلاسل (فكر في الأمر).

لاحظ أن اللقطات المعقدة ، خاصة مع البدائل ، بطيئة ؛ باستخدام منفصل
قد تكون المقارنات (أو لا) أسرع.

نلاحظ أن مكشcom.pdksh) لا تتطابق أبدًا مع "." و ".." ولكن AT&T UNIX KSH، بورن sh، وجنو
سحق القيام به.

لاحظ أن أيًا من عناصر النمط أعلاه لا يتطابق مع النقطة (".") في بداية a
اسم ملف أو شرطة مائلة ('/') ، حتى لو تم استخدامها بشكل صريح في تسلسل [..] ؛ أيضا ،
أسماء "." و ".." لا تتم مطابقتها أبدًا ، حتى من خلال النمط ". *".

إذا كان العلامات يتم تعيين الخيار ، أي الدلائل التي تنتج عن إنشاء اسم الملف هي
تم وضع علامة "/" لاحقة.

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

>ملف يتم إعادة توجيه الإخراج القياسي إلى ملف. إذا ملف غير موجود ، إنه مخلوق ؛
إذا كان موجودًا ، فسيكون ملفًا عاديًا ، و نوكلوبر تم تعيين الخيار ، خطأ
يحدث؛ وإلا ، يتم اقتطاع الملف. لاحظ أن هذا يعني الأمر كمد
<foo > فو سوف تفتح فو للقراءة ثم اقتطاعها عند فتحها
الكتابة قبل ذلك كمد يحصل على فرصة للقراءة بالفعل فو.

>|ملف مثل >، باستثناء الملف مقطوعًا ، حتى إذا كان ملف نوكلوبر تم تعيين الخيار.

>>ملف مثل >، إلا إذا ملف موجود يتم إلحاقه به بدلاً من أن يتم اقتطاعه.
أيضًا ، يتم فتح الملف في وضع الإلحاق ، لذلك تنتقل عمليات الكتابة دائمًا إلى نهاية ملف
ملف (انظر جاكيت (2)).

<ملف يتم إعادة توجيه الإدخال القياسي من ملفالذي يفتح للقراءة.

<>ملف مثل <، باستثناء الملف المفتوح للقراءة والكتابة.

<<علامة بعد قراءة سطر الأوامر الذي يحتوي على هذا النوع من إعادة التوجيه (يسمى a
"وثيقة هنا") ، تنسخ القشرة سطورًا من مصدر الأمر إلى ملف
ملف مؤقت حتى سطر مطابق علامة يقرأ. عندما يكون الأمر
تم التنفيذ ، تتم إعادة توجيه الإدخال القياسي من الملف المؤقت. لو علامة
لا يحتوي على أحرف بين علامات الاقتباس ، تتم معالجة محتويات الملف المؤقت
كما لو كانت محاطة بعلامات اقتباس مزدوجة في كل مرة يتم فيها تنفيذ الأمر ، لذا فإن المعلمة ،
الأمر ، ويتم إجراء الاستبدالات الحسابية ، جنبًا إلى جنب مع الشرطة المائلة للخلف ("\")
الهروب لـ '$' و '' و '\' و '\ newline' ، ولكن ليس لـ '"'. إذا كانت متعددة هنا
يتم استخدام المستندات في نفس سطر الأوامر ، ويتم حفظها بالترتيب.

إذا كانت الإجابة بلا علامة يتم إعطاء المستند هنا ينتهي في اليوم التالي << والاستبدال
سوف تنجز. لو علامة هي فقط مجموعة من "" "مفردة أو مزدوجة" ""
علامات الاقتباس مع عدم وجود أي شيء بينهما ، ينتهي المستند الموجود هنا عند السطر الفارغ التالي
ولن يتم إجراء الاستبدال.

<< -علامة مثل <<، باستثناء علامات الجدولة البادئة التي تم تجريدها من الأسطر الموجودة في المستند هنا.

<<كلمة مثل <<، ما عدا ذلك كلمة is المستند الموجود هنا. هذا يسمى هنا
سلسلة.

<&fd يتم تكرار الإدخال القياسي من واصف الملف fd. fd يمكن أن يكون رقمًا ،
يشير إلى رقم واصف ملف موجود ؛ الحرف "p" ، مشيرا
واصف الملف المرتبط بإخراج العملية المشتركة الحالية ؛ أو ال
الحرف "-" ، للإشارة إلى أن الإدخال القياسي سيتم إغلاقه. لاحظ أن fd is
يقتصر على رقم واحد في معظم تطبيقات shell.

>&fd مثل <&، باستثناء أن العملية تتم على الإخراج القياسي.

&>ملف مثل >ملف 2> & 1. هذا غنو (قديم) مهمل سحق تمديد مدعوم
by مكش والذي يدعم أيضًا رقم fd الصريح السابق ، على سبيل المثال ،
3 &>ملف بالضبط مثل 3>ملف 2> & 3 in مكش لكن خطأ نحوي في جنو سحق.

&> |ملف، & >>ملف، &> &fd
مثل >|ملف, >>ملفالطرق أو >&fd، تليها 2> & 1، على النحو الوارد أعلاه. هؤلاء هم مكش
ملحقات.

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

بالنسبة للأوامر البسيطة ، قد تظهر عمليات إعادة التوجيه في أي مكان في الأمر ؛ للأوامر المركبة
(if ، وما إلى ذلك) ، يجب أن تظهر أي عمليات إعادة توجيه في النهاية. تتم معالجة عمليات إعادة التوجيه
بعد إنشاء خطوط الأنابيب وبالترتيب الذي تم تقديمه به ، لذلك سيطبع ما يلي ملف
خطأ في رقم السطر المضاف إليه:

$ cat / foo / bar 2> & 1> / dev / null | العلاقات العامة -n -t

تعتبر واصفات الملفات التي تم إنشاؤها بواسطة عمليات إعادة توجيه الإدخال / الإخراج خاصة بالصدفة.

علم الحساب التعبيرات
يمكن استخدام التعبيرات الحسابية الصحيحة مع اسمحوا الأمر ، داخل تعبيرات $ ((..)) ،
داخل مراجع المصفوفة (على سبيل المثال الاسم[على سبيل المثال]) ، كوسائط رقمية لملف تجربه بالعربي الأمر ، و
قيمة التخصيص إلى معلمة عدد صحيح. تحذير: هذا يؤثر أيضًا بشكل ضمني
التحويل إلى عدد صحيح ، على سبيل المثال كما تم بواسطة ملف اسمحوا أمر. أبدا استخدام مستخدم غير محدد
المدخلات ، على سبيل المثال من البيئة ، في علم الحساب!

يتم حساب التعبيرات باستخدام الحساب المرتبط و mksh_ari_t اكتب (موقع 32 بت
عدد صحيح) ، إلا إذا كانت تبدأ بحرف "#" وحيد ، وفي هذه الحالة يستخدمونها mksh_uari_t (a
عدد صحيح بدون إشارة 32 بت).

قد تحتوي التعبيرات على معرفات معلمات أبجدية رقمية ومراجع مصفوفة وعدد صحيح
الثوابت ويمكن دمجها مع عوامل C التالية (المدرجة والمجمعة في
ترتيب الأسبقية المتزايد):

العوامل الأحادية:

+ -! ~ ++ -

عوامل التشغيل الثنائية:

,
= + = - = * = / =٪ = <<< = >>> = << = >> = & = ^ = | =
||
&&
|
^
&
==! =
<<=>> =
<<< >>> << >>
+ -
* /٪

العوامل الثلاثية:

؟: (الأسبقية أعلى من التعيين مباشرة)

عوامل التجميع:

()

يتم حساب ثوابت وتعبيرات الأعداد الصحيحة باستخدام 32 بت عريضًا أو موقعًا أو
بدون إشارة ، اكتب مع التفاف صامت على تجاوز عدد صحيح. قد تكون ثوابت عدد صحيح
محدد بقواعد تعسفية باستخدام الترميز قاعدة#عدد، حيث قاعدة هو رقم عشري
عدد صحيح يحدد الأساس ، و عدد هو رقم في الأساس المحدد. بالإضافة إلى ذلك،
يمكن تحديد الأعداد الصحيحة من نوع base-16 عن طريق تسبقها بـ "0x" (غير حساسة لحالة الأحرف) في الكل
أشكال التعبيرات الحسابية ، باستثناء الوسائط الرقمية لـ تجربه بالعربي أمر مدمج.
لا تسبب بادئة الأرقام برقم وحيد صفر ("0") تفسيرًا على أنه رقم ثماني ، مثل
هذا غير آمن.

كخاص مكش التمديد ، يتم التعامل مع الأرقام إلى أساس واحد على أنها إما (8 بت
شفافة) ASCII أو Unicode ، اعتمادًا على نقاط الشفرة utf8- الوضع علم (تيار
جلسة). AT&T UNIX شلن كيني 93 كما يتم دعم بناء جملة "" x "بدلاً من" 1 # x ". ملحوظة
لا يمكن استخدام بايت NUL (قيمة تكاملية للصفر). معلمة غير محددة أو فارغة
بتقييم إلى 0 في سياق عدد صحيح. في وضع Unicode ، يتم تعيين ثماني بتات أولية في النطاق
EF80..EFFF كما هو الحال في OPTU-8 ، الموجود في PUA والذي تم تعيينه بواسطة CSUR لهذا الاستخدام. لو
أكثر من ثماني بتات في وضع ASCII ، أو تسلسل من أكثر من ثماني بتات لا يشكل نطاقًا صالحًا
ويتم تمرير الحد الأدنى من تسلسل CESU-8 ، ويكون السلوك غير محدد (عادةً ، يتم إحباط الغلاف
مع وجود خطأ في التحليل ، ولكن نادرًا ما ينجح ، على سبيل المثال في التسلسل C2 20). لهذا السبب أنت
يجب دائمًا استخدام وضع ASCII ما لم تكن تعلم أن الإدخال جيد التنسيق UTF-8 في ملف
نطاق 0000..FFFD إذا كنت تستخدم هذه الميزة ، بدلاً من اقرأ -a.

يتم تقييم المشغلين على النحو التالي:

أحادي +
النتيجة هي الحجة (مدرجة للاكتمال).

أحادي -
النفي.

! المنطقية لا ؛ تكون النتيجة 1 إذا كانت الوسيطة صفرًا ، و 0 إذا لم تكن كذلك.

~ الحساب (بت الحكمة) لا.

++ زيادة يجب تطبيقه على معلمة (ليس تعبيرًا حرفيًا أو تعبيرًا آخر).
تتم زيادة المعلمة بمقدار 1. عند استخدامها كعامل بادئة ، النتيجة
هي القيمة المتزايدة للمعلمة ؛ عند استخدامه كعامل بعد الإصلاح ،
تكون النتيجة هي القيمة الأصلية للمعامل.

-- مشابه ل ++، باستثناء إنقاص المعلمة بمقدار 1.

، يفصل بين تعبيرين حسابيين ؛ يتم تقييم الجانب الأيسر أولاً ،
ثم الحق. النتيجة هي قيمة التعبير على اليد اليمنى
الجانب.

= التنازل ؛ يتم تعيين المتغير الموجود على اليسار على القيمة الموجودة على اليمين.

+ = - = * = / =٪ = <<< = >>> = << = >> = & = ^ = | =
عوامل التعيين.فار><op> =على سبيل المثال> هو نفسفار> =فار><op><على سبيل المثال>,
مع أي أسبقية عامل فيعلى سبيل المثال> محفوظة. على سبيل المثال ، "var1 * = 5 +
3 "هو نفسه تحديد" var1 = var1 * (5 + 3) ".

|| منطقي أو ؛ تكون النتيجة 1 إذا كانت أي من الوسيطتين غير صفرية ، و 0 إذا لم تكن كذلك. ال
يتم تقييم الوسيطة اليمنى فقط إذا كانت الوسيطة اليسرى تساوي صفرًا.

&& المنطقية AND؛ تكون النتيجة 1 إذا كانت كلتا الوسيطتين غير صفرية ، و 0 إذا لم تكن كذلك. ال
يتم تقييم الوسيطة اليمنى فقط إذا كانت الوسيطة اليسرى ليست صفرية.

| العمليات الحسابية (bit-wise) أو.

^ حسابي (bit-wise) XOR (حصري- OR).

& الحساب (البت الحكيم) AND.

== يساوي ؛ تكون النتيجة 1 إذا كانت كلتا الوسيطتين متساويتين ، 0 إذا لم تكن كذلك.

! = لا يساوي ؛ تكون النتيجة 0 إذا كانت كلتا الوسيطتين متساويتين ، و 1 إذا لم تكن كذلك.

<أقل من ؛ تكون النتيجة 1 إذا كانت الوسيطة اليسرى أقل من القيمة اليمنى ، و 0 إذا
لا.

<=>> =
أصغر من أو يساوي ، أكبر من ، أكبر من أو يساوي. يرى <.

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

<< >> التحول لليسار (يمين) ؛ والنتيجة هي الوسيطة اليسرى مع إزاحة بتاتها إلى اليسار
(يمين) بالمبلغ المعطى في الوسيطة الصحيحة.

+ - * /
الجمع والطرح والضرب والقسمة.

٪ بقية؛ والنتيجة هي باقي القسمة المتماثلة على اليسار
حجة بالحق. للحصول على المعامل الرياضي "أ وزارة الدفاع ب "، استخدم
الصيغة "(أ٪ ب + ب)٪ ب".

<أرج 1أرج 2>:أرج 3>
إذاأرج 1> غير صفرية ، والنتيجة هيأرج 2> ؛ وإلا فإن النتيجةأرج 3>.
لا يتم تقييم الوسيطة غير الناتجة.

العمليات المشتركة
العملية المشتركة (وهي عبارة عن خط أنابيب تم إنشاؤه باستخدام عامل التشغيل "| &") هي عملية غير متزامنة
يمكن أن يكتب كل من الغلاف (باستخدام طباعة -p) وقراءة من (باستخدام اقرأ -p). المدخل
ويمكن أيضًا معالجة ناتج العملية المشتركة باستخدام > & ص و <& ص إعادة التوجيه
على التوالى. بمجرد بدء عملية مشتركة ، لا يمكن بدء عملية أخرى حتى-
تنتهي العملية ، أو حتى يتم إعادة توجيه مدخلات العملية المشتركة باستخدام EXEC n> & ص
إعادة التوجيه. إذا تمت إعادة توجيه مدخلات العملية المشتركة بهذه الطريقة ، فيجب أن تكون العملية المشتركة التالية
سيتم مشاركة الإخراج مع العملية المشتركة الأولى ، ما لم يكن ناتج الأولي
تمت إعادة توجيه العملية المشتركة باستخدام ملف EXEC n<& ص إعادة التوجيه.

بعض الملاحظات المتعلقة بالعمليات المشتركة:

· الطريقة الوحيدة لإغلاق مدخلات العملية المشتركة (بحيث تقرأ العملية المشتركة نهاية الملف) هي
لإعادة توجيه الإدخال إلى واصف ملف مرقم ثم إغلاق واصف الملف هذا:
EXEC 3> & ع ؛ EXEC 3> & -

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

· طباعة -p سوف يتجاهل إشارات SIGPIPE أثناء عمليات الكتابة إذا لم تكن الإشارة محاصرة أو
متجاهل وينطبق الشيء نفسه إذا تم تكرار إدخال العملية المشتركة إلى ملف آخر
واصف و طباعة -un .

وظائف
يتم تحديد الوظائف باستخدام أي من Korn shell وظيفة اسم وظيفة بناء الجملة أو
قذيفة Bourne / POSIX اسم وظيفة() بناء الجملة (انظر أدناه لمعرفة الفرق بين الاثنين
نماذج). الوظائف هي مثل البرامج النصية ‐ (أي البرامج النصية التي تم الحصول عليها باستخدام "." المضمنة) في ذلك
يتم تنفيذها في البيئة الحالية. ومع ذلك ، على عكس البرامج النصية ‐ ، وسيطات الصدفة
(على سبيل المثال ، المعلمات الموضعية $ 1 ، $ 2 ، إلخ.) لا تظهر أبدًا بداخلها. عندما تكون القشرة
تحديد موقع الأمر ، يتم البحث عن الوظائف بعد مدمجة خاصة
الأوامر ، قبل البنيات ويتم البحث عن المسار.

يمكن حذف وظيفة موجودة باستخدام غير مصلد -f اسم وظيفة. قائمة الوظائف يمكن
يمكن الحصول عليها باستخدام منضدة +f ويمكن سرد تعريفات الوظائف باستخدام منضدة -f.
autoload الأمر (وهو اسم مستعار لـ منضدة -فو) لإنشاء ملفات غير محددة
وظائف: عند تنفيذ وظيفة غير محددة ، تبحث القشرة في المسار المحدد في
المعلمة FPATH لملف يحمل نفس اسم الوظيفة التي ، إذا وجدت ، تتم قراءتها
ونُفذت. إذا تم تحديد الوظيفة المسماة بعد تنفيذ الملف ، فسيتم تحديد ملف
يتم تنفيذ الوظيفة ؛ خلاف ذلك ، يستمر بحث الأمر العادي (أي shell
يبحث في جدول الأوامر المدمج العادي و PATH). لاحظ أنه إذا لم يتم العثور على أمر
باستخدام PATH ، تتم محاولة التحميل التلقائي لوظيفة باستخدام FPATH (هذا ملف غير موثق
ميزة غلاف كورن الأصلي).

يمكن أن تحتوي الوظائف على خاصيتين ، "التتبع" و "التصدير" ، والتي يمكن ضبطهما باستخدام منضدة -قدم
و منضدة -fx، على التوالى. عندما يتم تنفيذ وظيفة متتبعة ، فإن shell's com.xtrace
يتم تشغيل الخيار طوال مدة الوظيفة. سمة "التصدير" للوظائف هي
حاليا لا تستخدم. في غلاف Korn الأصلي ، تكون الوظائف المصدرة مرئية لـ shell
البرامج النصية التي يتم تنفيذها.

نظرًا لأنه يتم تنفيذ الوظائف في بيئة shell الحالية ، يتم إجراء تعيينات المعلمات
تظهر الوظائف الداخلية بعد اكتمال الوظيفة. إذا لم يكن هذا هو المطلوب
تأثير منضدة يمكن استخدام الأمر داخل دالة لإنشاء معلمة محلية. ملحوظة
أن AT & T UNIX شلن كيني 93 يستخدم تحديد النطاق الثابت (نطاق عالمي واحد ، نطاق محلي واحد لكل وظيفة)
ويسمح للمتغيرات المحلية فقط في وظائف نمط Korn ، بينما مكش يستخدم النطاق الديناميكي
(نطاقات متداخلة من مناطق مختلفة). لاحظ أن المعلمات الخاصة (على سبيل المثال $$, $!) لا يمكن أن يكون
بهذه الطريقة.

حالة الخروج من الوظيفة هي حالة آخر أمر تم تنفيذه في الوظيفة. أ
يمكن إجراء الوظيفة للانتهاء فورًا باستخدام ملف عائد أعلى يأمر؛ يمكن استخدام هذا أيضًا
لتحديد حالة الخروج صراحة.

الوظائف المحددة بامتداد وظيفة يتم التعامل مع الكلمة المحجوزة بشكل مختلف في ما يلي
طرق من الوظائف المحددة مع () الرموز:

· يتم تعيين المعلمة $ 0 على اسم الوظيفة (تترك وظائف Bourne-style $ 0
لم يمسها).

· لا يتم الاحتفاظ بتخصيصات المعلمات التي تسبق استدعاءات الوظائف في بيئة shell
(سيؤدي تنفيذ وظائف بأسلوب بورن إلى الاحتفاظ بالتعيينات).

· يتم حفظ OPTIND / إعادة تعيينه واستعادته عند الدخول والخروج من الوظيفة بذلك com.getopts يمكن أن يكون
تُستخدم بشكل صحيح داخل الوظيفة وخارجها (وظائف نمط بورن تترك OPTIND
لم يمسها ، وذلك باستخدام com.getopts داخل دالة يتعارض مع استخدام com.getopts خارج
وظيفة).

· خيارات شل (طقم -o) لها نطاق محلي ، أي تتم إعادة تعيين التغييرات داخل دالة
خروجها.

في المستقبل ، يمكن أيضًا إضافة الاختلافات التالية:

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

· سيتم تنفيذ ملائمة الخروج ، إذا تم تعيينها في دالة ، بعد إرجاع الدالة.

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

الأصلي KSH و POSIX تختلف إلى حد ما حيث تعتبر الأوامر خاصة أو
منتظم.

أدوات POSIX المدمجة الخاصة:

., :, استراحة, استمر, وحدة التقييم, EXEC, خروج, تصدير, للقراءة فقط, عائد أعلى, طقم, نقل, مرات, فخ,
غير مصلد

إضافي مكش أوامر حفظ المهام:

المضمن, شامل, مصدر, منضدة, انتظر

المباني غير المميزة:

[, الاسم المستعار, bg, ربط, قط, cd, أمر, صدى, زائف, fc, fg, com.getopts, وظائف, قتل, اسمحوا, طباعة,
الأشخاص ذوي الإعاقة, اقرأ, realpath, إعادة تسمية, النوم, تعليق, تجربه بالعربي, صحيح, ulimit, Umask, unalias., من أين

بمجرد تحديد نوع الأمر ، يتم تحديد أي تعيينات لمعلمات سطر الأوامر
تم أداؤه وتصديره طوال مدة الأمر.

فيما يلي وصف للأوامر المضمنة الخاصة والعادية والمحجوزة المضمنة
كلمات:

. ملف [الأرجنتين ]
وهذا ما يسمى بأمر "النقطة". نفّذ الأوامر بتنسيق ملف فى الحاضر
بيئة. يتم البحث عن الملف في أدلة PATH. إذا كانت الحجج
معطى ، يمكن استخدام المعلمات الموضعية للوصول إليها أثناء ملف هو يجري
أعدم. إذا لم يتم تقديم أي وسيطات ، فإن المعلمات الموضعية هي تلك الخاصة بـ
البيئة التي يستخدم فيها الأمر.

: [ ]
الأمر الفارغ. تم ضبط حالة الخروج على الصفر.

[ التعبير ]
يرى تجربه بالعربي.

الاسم المستعار [-d | -t [-r] | + -x] [-p] [+] [الاسم [=قيمنا] ]
بدون حجج ، الاسم المستعار يسرد جميع الأسماء المستعارة. لأي اسم بدون قيمة ، فإن ملف
يتم سرد الاسم المستعار الحالي. يحدد أي اسم له قيمة اسمًا مستعارًا (راجع الأسماء المستعارة
في الاعلى).

عند إدراج الأسماء المستعارة ، يتم استخدام أحد التنسيقين. عادة ، يتم سرد الأسماء المستعارة على أنها
الاسم=قيمنا، حيث قيمنا مقتبس. إذا كانت الخيارات مسبوقة بـ "+" ، أو "+" وحيد
يتم تقديمها في سطر الأوامر ، فقط الاسم مطبوع.

-d يؤدي الخيار إلى إدراج الأسماء المستعارة للدليل التي يتم استخدامها في توسيع التلدة
أو مجموعة (انظر تيلدا توسع في الاعلى).

إذا كان -p الخيار المستخدم ، كل اسم مستعار يكون مسبوقًا بالسلسلة "alias".

-t يشير الخيار إلى أنه يجب إدراج / تعيين الأسماء المستعارة المتعقبة (القيم المحددة
في سطر الأوامر يتم تجاهلها للأسماء المستعارة المتعقبة). ال -r الخيار يشير إلى ذلك
يجب إعادة تعيين جميع الأسماء المستعارة المتعقبة.

-x مجموعات الخيارات (+x مسح) سمة التصدير للاسم المستعار ، أو إذا لم تكن هناك أسماء
معطى ، يسرد الأسماء المستعارة مع سمة التصدير (تصدير الاسم المستعار لا يحتوي على
تأثير).

bg [وظيفة ]
استئناف المهمة (المهام) المتوقفة المحددة في الخلفية. إذا لم يتم تحديد وظائف ، %+
يفترض. يرى وظيفة مراقبة أدناه لمزيد من المعلومات.

ربط [-l]
يتم سرد الارتباطات الحالية. إذا كان -l يتم إعطاء العلم ، ربط بدلا من ذلك يسرد
أسماء الوظائف التي يمكن ربط المفاتيح بها. يرى إيماكس التحرير طريقة لمزيد من
معلومات.

ربط [-m] سلسلة=[استبدل]
ربط سلسلة=[أمر التحرير]
أمر التحرير المحدد مرتبط بالملف سلسلة، والتي يجب أن تتكون من أ
حرف التحكم مسبوقًا اختياريًا بأحد حرفي البادئة و
التي خلفتها اختياريًا حرف التلدة. المدخلات المستقبلية لـ سلسلة سيعطل
يتم استدعاء أمر التحرير على الفور. إذا كان -m يتم إعطاء العلم المحدد
إدخال سلسلة سيتم استبداله على الفور بعد ذلك استبدل سلسلة
والتي قد تحتوي على أوامر تحرير وليس وحدات ماكرو أخرى. إذا كانت علامة التلدة postfix
معطى ، يتم تجاهل علامة التلدة التي تتخلف عن واحد أو اثنين من البادئات وحرف التحكم ،
ستتم معالجة أي حرف لاحق آخر بعد ذلك.

يمكن كتابة أحرف التحكم باستخدام تدوين الإقحام ، أي أن ^ X يمثل Ctrl-X.
لاحظ أنه على الرغم من دعم حرفين فقط من أحرف البادئة (عادةً ESC و ^ X) ،
يمكن دعم بعض التسلسلات متعددة الأحرف.

توضح الارتباطات الافتراضية التالية كيفية مفاتيح الأسهم ومفتاح الصفحة الرئيسية ومفتاح الإنهاء والحذف
على BSD wsvt25 أو xterm-xfree86 أو محطة شاشة GNU ملزمة (بالطبع بعض
تسلسل الهروب لن ينجح بشكل جيد):

ربط '^ X' = بادئة -2
ربط '^ [[' = بادئة -2
ربط '^ XA' = up-history
ربط '^ XB' = أسفل التاريخ
ربط '^ XC' = forward-char
ربط '^ XD' = backward-char
ربط '^ X1 ~' = بداية السطر
ربط '^ X7 ~' = بداية السطر
ربط '^ XH' = بداية السطر
ربط '^ X4 ~' = نهاية السطر
ربط '^ X8 ~' = نهاية السطر
ربط '^ XF' = نهاية السطر
ربط '^ X3 ~' = حذف حرف إعادة توجيه

استراحة [مستوى]
الخروج من مستوىال داخليًا For, حدد, حتىالطرق أو في حين عقدة. مستوى الافتراضي إلى 1.

المضمن [--] أمر [الأرجنتين ]
قم بتنفيذ الأمر المدمج أمر.

قط [-u] [ملف ]
اقرأ الملفات بالتسلسل ، بترتيب سطر الأوامر ، واكتبها على الإخراج القياسي.
إذا كان ملف هي شرطة مفردة ("-") أو غائبة ، مقروءة من الإدخال القياسي. للمباشرة
مكالمات مدمجة ، POSIX -u يتم دعم الخيار باعتباره no-op. للمكالمات من شل ، إذا
يتم إعطاء أي خيارات خارجية قط(1) يفضل استخدام المنفعة على المدمج.

cd [-L] [دير]
cd -P [-e] [دير]
تشدر [-ايل ع] [دير]
اضبط دليل العمل على دير. إذا تم تعيين المعلمة CDPATH ، فإنها تسرد ملف
مسار البحث عن الدليل الذي يحتوي على دير. يعني المسار الفارغ التيار
الدليل. لو دير تم العثور عليه في أي مكون من مكونات مسار بحث CDPATH بخلاف ملف
مسار NULL ، سيتم كتابة اسم دليل العمل الجديد إلى الإخراج القياسي.
If دير مفقود ، يتم استخدام الدليل الرئيسي HOME. لو دير هو "-" ، السابق
يتم استخدام دليل العمل (انظر معلمة OLDPWD).

إذا كان -L الخيار (المسار المنطقي) أو إذا كان مادي لم يتم تعيين الخيار (راجع ملف
طقم الأمر أدناه) ، يشير إلى ".." في دير ذات صلة بالمسار المستخدم للوصول إليه
الدليل. إذا كان -P الخيار (المسار المادي) أو إذا كان مادي الخيار
تعيين ، ".." نسبة إلى شجرة دليل نظام الملفات. الأشخاص ذوي الإعاقة و OLDPWD
يتم تحديث المعلمات لتعكس دليل العمل الحالي والقديم ،
على التوالى. إذا كان -e تم تعيين الخيار لاجتياز نظام الملفات المادي ، و PWD
لا يمكن تعيين رمز الخروج هو 1 ؛ أكبر من 1 في حالة حدوث خطأ ، 0
غير ذلك.

cd [-ايل ع] قديم جديد
تشدر [-ايل ع] قديم جديد
السلسلة جديد يتم استبدال ل قديم في الدليل الحالي ، و shell
يحاول التغيير إلى الدليل الجديد.

أمر [-pVv] كمد [الأرجنتين ]
إذا لم يكن -v ولا -V يتم إعطاء الخيار ، كمد يتم تنفيذه تمامًا كما لو أمر كان
لم يتم تحديده ، مع استثناءين: أولاً ، كمد لا يمكن أن تكون وظيفة قذيفة ؛ و
ثانيًا ، تفقد الأوامر المضمنة خصوصيتها (أي إعادة التوجيه و
لا تتسبب أخطاء الأداة المساعدة في خروج shell ، كما أن تعيينات الأوامر ليست كذلك
دائم).

إذا كان -p يتم استخدام خيار البحث الافتراضي بدلاً من القيمة الحالية
من PATH ، القيمة الفعلية التي تعتمد على النظام.

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

استمر [مستوى]
ينتقل إلى بداية ملف مستوىال داخليًا For, حدد, حتىالطرق أو في حين عقدة.
مستوى الافتراضي إلى 1.

صدى [-عين] [الأرجنتين ]
: تحذير هذه الأداة ليست محمولة ؛ استخدم قشرة كورن المدمجة طباعة بدلا من ذلك.

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

يتم توفير الخيارات للتوافق مع البرامج النصية لقذيفة BSD. ال -n خيار
يمنع السطر الجديد اللاحق ، -e تمكن من تفسير الخط المائل العكسي (no-op ، منذ ذلك الحين
يتم ذلك عادة) ، و -E يمنع تفسير الخط المائل العكسي.

إذا كان POSIX or sh تم تعيين الخيار أو هذه مكالمة مضمنة مباشرة ، فقط الأولى
يتم التعامل مع الحجة كخيار ، وفقط إذا كانت بالضبط "-n". شرطة مائلة للخلف
التفسير معطل.

وحدة التقييم أمر
الوسائط متسلسلة (مع مسافات بينها) لتكوين سلسلة واحدة
والتي بدورها تحلل الغلاف وتنفيذه في البيئة الحالية.

EXEC [-a argv0] [-c] [أمر [الأرجنتين ]]
يتم تنفيذ الأمر بدون تفرع ، ليحل محل عملية الصدفة. هذا هو
المطلق حاليا ، أي EXEC لا يعود أبدًا ، حتى لو كان أمر غير موجود. ال
-a يسمح الخيار بتعيين قيمة argv [0] مختلفة ، و -c يزيل البيئة
قبل تنفيذ العملية الفرعية ، باستثناء _ التخصيصات المتغيرة والمباشرة.

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

خروج [الحالة]
يخرج الغلاف بحالة الخروج المحددة. لو الحالة لم يتم تحديد الخروج
الحالة هي القيمة الحالية لـ $? المعلمة.

تصدير [-p] [المعلمة[=قيمنا]]
يضبط سمة التصدير للمعلمات المسماة. يتم تمرير المعلمات المصدرة
بيئة تنفيذ الأوامر. إذا تم تحديد القيم ، فإن المعلمات المسماة
يتم تعيينها أيضًا.

إذا لم يتم تحديد معلمات ، يتم تحديد كافة المعلمات التي تحتوي على مجموعة سمة التصدير
طبع واحدًا في كل سطر ؛ إما أسمائهم ، أو ، إذا كان "-" بدون حرف خيار هو
محدد ، اسم = أزواج قيمة ، أو ، مع -p, تصدير أوامر مناسبة لإعادة الدخول.

زائف أمر يخرج بحالة غير صفرية.

fc [-e رئيس التحرير | -l [-n]] [-r] [أول [آخر]]
أول و آخر حدد أوامر من التاريخ. يمكن تحديد الأوامر من خلال التاريخ
الرقم (الأرقام السالبة ترجع للخلف من السطر الحالي أو الأحدث) أو أ
سلسلة تحدد أحدث أمر يبدأ بهذه السلسلة. ال -l خيار
يسرد الأمر على الإخراج القياسي ، و -n يمنع أرقام الأوامر الافتراضية.
-r الخيار يعكس ترتيب القائمة. بدون -lالأوامر المحددة هي
الذي حرره المحرر المحدد بامتداد -e الخيار ، أو إذا كان الجواب لا -e محددًا ،
محرر محدد بواسطة معلمة FCEDIT (إذا لم يتم تعيين هذه المعلمة ، / بن / إد is
المستخدمة) ، ثم نفذتها القذيفة.

fc -e - | -s [-g] [قديم=جديد] [بادئة]
أعد تنفيذ الأمر المحدد (الأمر السابق افتراضيًا) بعد التنفيذ
الاستبدال الاختياري لـ قديم مع جديد. إذا -g كل تكرارات
قديم يتم استبدالها بـ جديد. معنى -e - و -s متطابق: أعد تنفيذ
الأمر المحدد دون استدعاء محرر. عادة ما يتم الوصول إلى هذا الأمر باستخدام
المحدد مسبقًا: الاسم المستعار ص = 'fc -e -'

fg [وظيفة ]
استئناف الوظيفة (الوظائف) المحددة في المقدمة. إذا لم يتم تحديد وظائف ، %+ is
يفترض. يرى وظيفة مراقبة أدناه لمزيد من المعلومات.

com.getopts com.optstring الاسم [الأرجنتين ]
تُستخدم بواسطة إجراءات الصدفة لتحليل الحجج المحددة (أو المعلمات الموضعية ،
إذا لم يتم تقديم أي حجج) وللتحقق من الخيارات القانونية. com.optstring يحتوي على
رسائل الخيار ذلك com.getopts هو الاعتراف. إذا كان الحرف متبوعًا بنقطتين ، فإن
الخيار المتوقع أن يكون لها حجة. قد تكون الخيارات التي لا تأخذ الحجج
مجمعة في حجة واحدة. إذا كان الخيار يأخذ حجة والخيار
الحرف ليس هو الحرف الأخير من الوسيطة الموجودة فيه ، باقي
تعتبر الحجة هي حجة الخيار ؛ خلاف ذلك ، فإن الحجة التالية هي
حجة الخيار.

في كل مرة com.getopts يتم استدعاؤه ، فإنه يضع الخيار التالي في معلمة shell الاسم
وفهرس الوسيطة المراد معالجتها بواسطة الاستدعاء التالي لـ com.getopts في ال
OPTIND قذيفة المعلمة. إذا تم تقديم الخيار بعلامة "+" ، فسيتم وضع الخيار
in الاسم مسبوقة بـ "+". عندما يتطلب الخيار حجة ، com.getopts الأماكن
في المعلمة قذيفة OPTARG.

عند مواجهة خيار غير قانوني أو وسيطة خيار مفقود ، تظهر علامة استفهام
أو القولون الاسم (يشير إلى خيار غير قانوني أو حجة مفقودة ،
على التوالي) ويتم تعيين OPTARG على حرف الخيار الذي تسبب في حدوث المشكلة.
وعلاوة على ذلك، إذا com.optstring لا يبدأ بنقطتين ، يتم وضع علامة استفهام فيه
الاسم، OPTARG غير مضبوط ، وتتم طباعة رسالة خطأ على خطأ قياسي.

عند مواجهة نهاية الخيارات ، com.getopts مخارج مع خروج غير صفري
حالة. تنتهي الخيارات عند الوسيطة الأولى (الوسيطة غير الاختيارية) التي لا تبدأ
باستخدام "-" ، أو عند مواجهة وسيطة "-".

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

تحذير: تغيير قيمة معلمة shell OPTIND إلى قيمة أخرى غير 1 ، أو
قد يؤدي تحليل مجموعات مختلفة من الوسائط دون إعادة تعيين OPTIND إلى حدوث أمر غير متوقع
النتائج.

شامل
يرى منضدة.

مزيج [-r] [الاسم ]
بدون وسيطات ، يتم سرد أي اسم مسار تنفيذي للأوامر المجزأة. ال -r خيار
يتسبب في إزالة جميع الأوامر المجزأة من جدول التجزئة. كل الاسم يتم البحث
كما لو كان اسم أمر تمت إضافته إلى جدول التجزئة إذا كان ملفًا قابلاً للتنفيذ
أمر.

وظائف [-lnp] [وظيفة ]
عرض معلومات حول الوظيفة (الوظائف) المحددة ؛ إذا لم يتم تحديد وظائف ، جميع الوظائف
يتم عرض. ال -n يؤدي الخيار إلى عرض المعلومات فقط للوظائف التي
تغيرت حالتها منذ آخر إخطار. إذا كان -l يستخدم الخيار
يتم أيضًا سرد معرف العملية لكل عملية في الوظيفة. ال -p الخيار يسبب فقط
مجموعة العمليات لكل مهمة ليتم طباعتها. يرى وظيفة مراقبة أدناه لتنسيق وظيفة
والوظيفة المعروضة.

قتل [-s علامة | -علامة | -علامة] { وظيفة | معرف المنتج | pgrp }
أرسل الإشارة المحددة إلى المهام المحددة أو معرّفات العمليات أو مجموعات العمليات. لو
لم يتم تحديد إشارة ، يتم إرسال إشارة TERM. إذا تم تحديد وظيفة ، فإن الإشارة
يتم إرساله إلى مجموعة معالجة الوظيفة. يرى وظيفة مراقبة أدناه لتنسيق وظيفة.

قتل -l [حالة الخروج ]
اطبع اسم الإشارة المقابل لـ حالة الخروج. إذا لم يتم تحديد وسيطات ، أ
تتم طباعة قائمة بجميع الإشارات وأرقامها ووصف موجز لها.

اسمحوا [التعبير ]
يتم تقييم كل تعبير (انظر علم الحساب التعبيرات فوق). إذا كانت كل التعبيرات
تم تقييمها بنجاح ، تكون حالة الخروج 0 (1) إذا تم تقييم التعبير الأخير
إلى غير الصفر (صفر). إذا حدث خطأ أثناء تحليل أو تقييم ملف
التعبير ، تكون حالة الخروج أكبر من 1. نظرًا لأن التعبيرات قد تحتاج إلى ذلك
مقتبس ، (( على سبيل المثال )) هو سكر نحوي لـ {let 'على سبيل المثال"؛ }.

يترك] الاسم المستعار المستخدم داخليا لـ اسمحوا.

مكنود [-m طريقة] الاسم b|c رائد قاصر
مكنود [-m طريقة] الاسم p
قم بإنشاء ملف خاص بالجهاز. قد يكون نوع الملف b (جهاز نوع الكتلة) ، c
(جهاز نوع الحرف) ، أو p (أنبوب مسمى ، FIFO). يمكن تعديل الملف الذي تم إنشاؤه
وفقا لها طريقة (عبر -m اختيار)، رائد (رقم الجهاز الرئيسي) و قاصر
(رقم جهاز ثانوي). هذا ليس عادة جزء من مكش؛ ومع ذلك ، يجوز للموزعين
أضافوا هذا باعتباره مدمجًا باعتباره اختراقًا سريعًا.

طباعة [-نبسو[n] | -R [-في]] [حجة ]
طباعة يطبع حججه على الإخراج القياسي ، مفصولة بمسافات وتنتهي
مع سطر جديد. ال -n الخيار يمنع السطر الجديد. بشكل افتراضي ، يهرب C معينة
مترجمة. وتشمل هذه المذكورة في مائل توسع أعلاه كذلك
كـ "\ c" ، وهو ما يعادل استخدام امتداد -n خيار. قد يكون توسيع الخط المائل العكسي
ممنوع مع -r اختيار. ال -s يطبع الخيار إلى ملف المحفوظات بدلاً من
الإخراج القياسي ال -u يطبع الخيار إلى ملف واصف n (n افتراضات إلى 1 إذا
محذوف) ؛ و ال -p يطبع الخيار إلى العملية المشتركة (انظر العمليات المشتركة في الاعلى).

-R يستخدم الخيار لمحاكاة BSD إلى حد ما صدى(1) الأمر الذي يفعل
لا تعالج تسلسلات '\' ما لم يكن -e يتم إعطاء الخيار. على النحو الوارد أعلاه ، فإن -n خيار
يمنع السطر الجديد اللاحق.

printf شكل [الحجج ]
إخراج منسق. تقريبًا نفس ملف printf(1) ، فائدة ، إلا أنه يستخدم
نفس الشيء مائل توسع و I / O code ولا يتعامل مع النقطة العائمة مثل
البقية من مكش. يُفضل استخدام الأداة الخارجية على المُدمج. هذا ليس
عادة جزء من مكش؛ ومع ذلك ، قد يكون الموزعون قد أضافوا هذا على أنه مضمّن مثل ملف
سرعة الإختراق. لا تستخدم في كود جديد.

الأشخاص ذوي الإعاقة [-LP]
اطبع دليل العمل الحالي. إذا كان -L يستخدم الخيار أو إذا كان مادي
لم يتم تعيين الخيار (راجع ملف طقم الأمر أدناه) ، تتم طباعة المسار المنطقي (أي ملف
يستخدم المسار ل cd إلى الدليل الحالي). إذا كان -P يستخدم الخيار (المسار المادي)
أو إذا كان مادي يتم تعيين الخيار ، المسار المحدد من نظام الملفات (بواسطة
بعد مجلدات ".." إلى الدليل الجذر).

اقرأ [-A | -a] [-d x] [-N z | -n z] [-p | -u[n]] [-t n] [-رس] [p ]
يقرأ سطر الإدخال ، ويفصل الإدخال في الحقول باستخدام معلمة IFS (انظر
الاستبدال أعلاه) ، ويخصص كل حقل للمعلمات المحددة p. إذا كان الجواب لا
يتم تحديد المعلمات ، يتم استخدام المعلمة REPLY لتخزين النتيجة. مع ال
-A و -a خيارات ، فقط لا يتم قبول أي معلمة واحدة أو يتم قبولها. إذا كان هناك المزيد
المعلمات من الحقول ، يتم تعيين المعلمات الإضافية على سلسلة فارغة أو 0 ؛ لو
هناك حقول أكثر من المعلمات ، يتم تعيين المعلمة الأخيرة المتبقية
الحقول (بما في ذلك فواصل الكلمات).

الخيارات كالتالي:

-A تخزين النتيجة في المعلمة p (أو REPLY) كمصفوفة من الكلمات.

-a تخزين النتيجة دون تقسيم الكلمة إلى المعلمة p (أو REPLY) كـ
مصفوفة من الأحرف (أحرف عريضة إذا كان الامتداد utf8- الوضع تم تفعيل الخيار ،
ثماني بتات خلاف ذلك) ؛ يتم ترميز نقاط التشفير كأرقام عشرية افتراضيًا.

-d x استخدم البايت الأول من x، NUL إذا كان فارغًا ، بدلاً من حرف سطر جديد ASCII
كمحدد خط الإدخال.

-N z بدلاً من القراءة حتى نهاية السطر ، اقرأ بدقة z بايت. إذا كان EOF أو ملف
انتهت المهلة ، يتم إرجاع قراءة جزئية بحالة الخروج 1.

-n z بدلاً من القراءة حتى نهاية السطر ، اقرأ حتى z بايت ولكن العودة في أقرب وقت
تتم قراءة أي بايت ، على سبيل المثال من جهاز طرفي بطيء ، أو إذا كان EOF أو مهلة
يحدث.

-p اقرأ من العملية المشتركة النشطة حاليًا ، انظر العمليات المشتركة أعلاه للحصول على التفاصيل
على هذا.

-u[n] اقرأ من واصف الملف n (القيمة الافتراضية هي 0 ، أي الإدخال القياسي). ال
يجب أن تتبع الوسيطة مباشرة حرف الخيار.

-t n يقطع القراءة بعد n ثواني (محددة كقيمة عشرية موجبة بامتداد
جزء كسري اختياري). حالة الخروج من اقرأ هي 1 إذا كانت المهلة
حدثت ، ولكن قد يستمر إرجاع القراءات الجزئية.

-r عادةً ما يهرب حرف الخط المائل العكسي ASCII من المعنى الخاص لملف
الطابع التالي ويتم تجريده من المدخلات ؛ اقرأ لا تتوقف عند
مواجهة تسلسل الخط المائل العكسي الجديد ولا يخزن هذا السطر الجديد في
النتائج. يمكّن هذا الخيار الوضع الخام ، حيث لا يتم استخدام الخطوط المائلة العكسية
معالجتها.

-s يتم حفظ سطر الإدخال في السجل.

إذا كان الإدخال عبارة عن محطة طرفية ، فإن كلا الملفين -N و -n الخيارات تضعه في الوضع الخام ؛ هم
قراءة ملف كامل إذا تم تمرير -1 كـ z جدال.

قد تحتوي المعلمة الأولى على علامة استفهام وسلسلة ملحقة بها ، وفيها
في حالة استخدام السلسلة كموجه (مطبوع على الخطأ القياسي قبل أي إدخال
read) إذا كان الإدخال هو ملف الكتابة البعيدة(4) (على سبيل المثال اقرأ nfoo؟ 'رقم of فووس: ').

إذا لم تتم قراءة أي إدخال أو حدث انتهاء المهلة ، اقرأ مخارج بحالة غير صفرية.

مجموعة أخرى من الحيل المفيدة: If اقرأ يتم تشغيله في حلقة مثل في حين اقرأ فو. do ...؛
فعل ثم ستتم إزالة المسافة البيضاء البادئة (IFS) ومعالجة الخطوط المائلة العكسية. أنت
قد ترغب في استخدامها في حين IFS = اقرأ -r فو. do ...؛ فعل لمنافذ الإدخال / الإخراج الأصلية. بصورة مماثلة،
عند استخدام -a الخيار ، استخدام -r قد يكون الخيار من الحكمة ؛ والأمر نفسه ينطبق
ل:

يجد . -النوع f -print0 | & \
بينما IFS = read -d '' -pr filename ؛ يفعل
print -r - "تم العثور على <$ {filename #. /}>"
فعل

سيتم تنفيذ الحلقة الداخلية في مجموعة فرعية ولا يمكن إجراء التغييرات المتغيرة
تنتشر إذا تم تنفيذها في خط أنابيب:

شريط | باز | أثناء قراءة foo؛ يفعل ...؛ منتهي

استخدم العمليات المشتركة بدلاً من ذلك:

شريط | باز | &
أثناء قراءة -p foo ؛ يفعل ...؛ منتهي
exec 3> & p ؛ exec 3> & -

للقراءة فقط [-p] [المعلمة [=قيمنا] ]
يضبط سمة القراءة فقط للمعلمات المسماة. إذا تم إعطاء القيم ،
يتم تعيين المعلمات لهم قبل تعيين السمة. بمجرد إجراء المعلمة
للقراءة فقط ، لا يمكن إلغاء ضبطه ولا يمكن تغيير قيمته.

إذا لم يتم تحديد معلمات ، فإن أسماء جميع المعلمات بالقراءة فقط
تتم طباعة سمة واحدة في كل سطر ، ما لم يكن -p يتم استخدام الخيار ، في هذه الحالة
للقراءة فقط الأوامر التي تحدد جميع معلمات القراءة فقط ، بما في ذلك قيمها ، هي
المطبوعة.

realpath [--] الاسم
يطبع اسم المسار المطلق الذي تم حله المطابق لـ الاسم. إذا الاسم ينتهي ب
شرطة مائلة ('/') ، يتم فحصها أيضًا من أجل الوجود وما إذا كان دليلًا ؛
غير ذلك، realpath تُرجع القيمة 0 إذا كان اسم المسار موجودًا أو يمكن إنشاؤه
على الفور ، على سبيل المثال ، جميع العناصر باستثناء المكون الأخير موجودة وهي عبارة عن أدلة.

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

عائد أعلى [الحالة]
يعود من وظيفة أو . النصي ، مع حالة الخروج الحالة. إذا كان الجواب لا الحالة معطى،
يتم استخدام حالة الخروج من آخر أمر تم تنفيذه. إذا تم استخدامه خارج الوظيفة
or . النصي ، له نفس تأثير خروج. لاحظ أن مكش يعامل كل من الملف الشخصي و
ENV كملفات . البرامج النصية ، في حين أن Korn shell الأصلي يتعامل فقط مع الملفات الشخصية على أنها .
مخطوطات.

طقم [+ -abCefhiklmnprsUuvXx] [+ -o خيار] [+ -A الاسم] [--] [الأرجنتين ]
طقم يمكن استخدام الأمر لتعيين (-) أو مسح (+) خيارات قذيفة ، اضبط الموضع
المعلمات ، أو تعيين معلمة صفيف. يمكن تغيير الخيارات باستخدام + -o خيار
بناء الجملة حيث خيار هو الاسم الطويل لخيار ، أو باستخدام امتداد +-خطاب بناء الجملة،
أين خطاب هو اسم الخيار الفردي (لا تحتوي كل الخيارات على حرف واحد
اسم). يسرد الجدول التالي كلاً من أحرف الخيارات (إن وجدت) والأسماء الطويلة
مع وصف لما يفعله الخيار:

-A الاسم
يضبط عناصر معلمة الصفيف الاسم إلى الأرجنتين If -A يستخدم
يتم إعادة تعيين مجموعة (أي إفراغ) أولاً ؛ لو +A يتم استخدام العناصر N الأولى
(حيث N هو عدد الحجج) ؛ يتم ترك البقية دون مساس.

صيغة بديلة للأمر طقم -A فو -- a b c وهو متوافق مع
جنو سحق وأيضًا بدعم من AT&T UNIX شلن كيني 93 هو: foo = (أ b ج) ؛ فو + = (د e)

-a | -o اليكسبورت
يتم إنشاء جميع المعلمات الجديدة باستخدام سمة التصدير.

-b | -o أبلغ
اطبع رسائل إخطارات المهام بشكل غير متزامن ، بدلاً من طباعة رسائل الإعلام قبل ملف
اِسْتَدْعَى. تُستخدم فقط إذا تم تمكين التحكم في الوظيفة (-m).

-C | -o نوكلوبر
منع> إعادة التوجيه من الكتابة فوق الملفات الموجودة. بدلاً من ذلك ،> | لابد من استخدامه
لفرض الكتابة. لاحظ أن هذا ليس آمنًا للاستخدام في إنشاء ملفات
الملفات المؤقتة أو ملفات القفل بسبب TOCTOU في فحص يسمح للمرء بإعادة التوجيه
مخرجات الى / ديف / لاغية أو ملفات الجهاز الأخرى حتى في ملفات نوكلوبر واسطة.

-e | -o إريكست
قم بإنهاء (بعد تنفيذ اعتراض ERR) بمجرد حدوث خطأ أو أمر
فشل (أي حالات الخروج مع حالة غير صفرية). هذا لا ينطبق على الأوامر
التي يتم اختبار حالة خروجها بشكل صريح من خلال بناء قذيفة مثل if, حتى,
في حينالطرق أو ! صياغات. ل && أو || ، فقط حالة الأمر الأخير هي
اختبارها.

-f | -o نوغلوب
لا تقم بتوسيع أنماط اسم الملف.

-h | -o تراكول
قم بإنشاء أسماء مستعارة متعقبة لجميع الأوامر المنفذة (انظر الأسماء المستعارة فوق). ممكن
افتراضيًا للأصداف غير التفاعلية.

-i | -o التفاعلية
القشرة عبارة عن غلاف تفاعلي. لا يمكن استخدام هذا الخيار إلا عندما يكون الغلاف
تم استدعاؤه. انظر أعلاه للحصول على وصف لما يعنيه هذا.

-k | -o الكلمة
يتم التعرف على تعيينات المعلمات في أي مكان في الأمر.

-l | -o تسجيل الدخول
القشرة هي قذيفة تسجيل الدخول. لا يمكن استخدام هذا الخيار إلا عندما يكون الغلاف
استدعى. انظر أعلاه للحصول على وصف لما يعنيه هذا.

-m | -o مراقب
تفعيل التحكم في العمل (افتراضي للقذائف التفاعلية).

-n | -o noexec
لا تنفذ أي أوامر. مفيد للتحقق من بناء جملة البرامج النصية (تم التجاهل
إذا كانت تفاعلية).

-p | -o متميز
القشرة هي صدفة مميزة. يتم ضبطه تلقائيًا إذا ، عندما يكون الغلاف
في البداية ، لا يتطابق المعرف الفريد العمومي (UID) أو GID الحقيقي مع المعرف الفريد العمومي (EUID) أو GID الفعال
(EGID) ، على التوالي. انظر أعلاه للحصول على وصف لما يعنيه هذا.

-r | -o مقيد
القذيفة هي قذيفة مقيدة. لا يمكن استخدام هذا الخيار إلا عندما يكون الغلاف
استدعى. انظر أعلاه للحصول على وصف لما يعنيه هذا.

-s | -o ستدين
إذا تم استخدامه عند استدعاء shell ، تتم قراءة الأوامر من الإدخال القياسي. تعيين
تلقائيًا إذا تم استدعاء الصدفة بدون وسيطات.

متى -s يستخدم مع طقم الأمر يتسبب في أن تكون الوسائط المحددة
تم فرزها قبل تعيينها للمعلمات الموضعية (أو للمصفوفة الاسم، إذا
-A يستخدم).

-U | -o utf8- الوضع
قم بتمكين دعم UTF-8 في ملف إيماكس التحرير طريقة والتعامل مع السلسلة الداخلية
المهام. يتم تعطيل هذه العلامة افتراضيًا ، ولكن يمكن تمكينها عن طريق تعيينها
على سطر أوامر shell ؛ يتم تمكينه تلقائيًا للأصداف التفاعلية إذا كان
طلب في وقت الترجمة ، يدعم نظامك مجموعة(LC_CTYPE, "") و
اختياريا nl_langinfo(مجموعة الرموز) ، أو بيئة LC_ALL أو LC_CTYPE أو LANG
المتغيرات ، ويعيد أحد هذه المتغيرات على الأقل شيئًا يطابق "UTF-8" أو
"utf8" غير حساس لحالة الأحرف ؛ للمكالمات المدمجة المباشرة اعتمادًا على
متغيرات البيئة المذكورة أعلاه ؛ أو للنصوص أو stdin ، إذا كان الإدخال
يبدأ بـ UTF-8 Byte Order Mark.

في المستقبل القريب ، سيتم تنفيذ تتبع الإعدادات المحلية ، مما يعني ذلك طقم - + ش is
تتغير عندما يتغير أحد متغيرات البيئة المتعلقة بالإعدادات المحلية لـ POSIX.

-u | -o اسم
يتم التعامل مع الإشارة إلى معلمة غير محددة ، بخلاف "$ @" أو "$ *" ، على أنها ملف
خطأ ، ما لم يتم استخدام أحد المعدلات "-" أو "+" أو "=".

-v | -o مطنب
اكتب إدخال قذيفة إلى الخطأ القياسي كما هو مقروء.

-X | -o العلامات
قم بتمييز الدلائل بعلامة '/' لاحقة أثناء إنشاء اسم الملف.

-x | -o com.xtrace
اطبع أشجار الأوامر عند تنفيذها مسبوقة بقيمة PS4.

-o بجنيس
يتم تشغيل وظائف الخلفية بأولوية أقل.

-o دعامة
تفعيل توسيع الدعامة (الملقب بالتناوب). يتم تمكين هذا افتراضيا. لو
معطل ، يتم تعطيل توسيع التلدة بعد علامة يساوي كأثر جانبي.

-o ايماكس
تمكين تحرير سطر الأوامر مثل BRL emacs (الصدفة التفاعلية فقط) ؛ يرى إيماكس
التحرير طريقة.

-o com.gmacs
تفعيل تحرير سطر الأوامر مثل gmacs (الصدفة التفاعلية فقط). حالياً
مماثل لتحرير emacs فيما عدا أن تبديل الأحرف (^ T) يعمل بشكل طفيف
بشكل مختلف.

-o تجاهل
لن يخرج الغلاف (بسهولة) عند قراءة نهاية الملف ؛ خروج لابد من استخدامه.
لتجنب الحلقات اللانهائية ، ستخرج الصدفة إذا تمت قراءة EOF 13 مرة على التوالي.

-o ترث xtrace
لا تقم بإعادة الضبط -o com.xtrace عند دخول الوظائف. يتم تمكين هذا افتراضيا.

-o nohup
لا تقتل الوظائف الجارية بإشارة SIGHUP عند خروج قذيفة تسجيل الدخول.
تم تعيينه حاليًا افتراضيًا ، ولكن قد يتغير هذا في المستقبل ليكون متوافقًا
مع AT&T UNIX KSH، الذي لا يحتوي على هذا الخيار ، ولكنه يرسل SIGHUP
إشارة.

-o نولوغ
بدون تأثير. في غلاف Korn الأصلي ، يمنع هذا تعريفات الوظائف من
يتم تخزينها في ملف التاريخ.

-o مادي
يتسبب في cd و الأشخاص ذوي الإعاقة أوامر لاستخدام "المادي" (أي نظام الملفات) ".."
الدلائل بدلاً من الدلائل "المنطقية" (على سبيل المثال ، تتعامل shell مع ".." ، والتي
يسمح للمستخدم بأن يكون غافلًا عن الروابط الرمزية للأدلة). مسح بواسطة
تقصير. لاحظ أن تعيين هذا الخيار لا يؤثر على القيمة الحالية لملف
معلمة PWD ؛ فقط ال cd الأمر يغير الأشخاص ذوي الإعاقة. انظر cd و الأشخاص ذوي الإعاقة الأوامر
أعلاه لمزيد من التفاصيل.

-o الأنابيب
اجعل حالة الخروج من خط الأنابيب (قبل التكملة المنطقية)
أقصى مستوى خطأ غير صفري ، أو صفر إذا تم إنهاء جميع الأوامر بصفر.

-o POSIX
تصرف أقرب إلى المعايير (انظر POSIX طريقة للتفاصيل). تلقائيا
مُمكّن إذا كان الاسم الأساسي لاستدعاء الصدفة يبدأ بـ "sh" وهذا
يتم تجميع ميزة الاكتشاف التلقائي في (وليس في MirBSD). كأثر جانبي ، وضع
هذا العلم ينطفئ دعامة الوضع ، والذي يمكن إعادة تشغيله يدويًا ، و
sh الوضع (ما لم يتم تمكين كلاهما في نفس الوقت).

-o sh
تفعيل / بن / ش وضع (كلودج) (انظر SH طريقة). يتم تمكينه تلقائيًا إذا كان
يبدأ الاسم الأساسي لاستدعاء القشرة بـ "sh" وخاصية الاكتشاف التلقائي هذه
تم تجميعها في (ليس في MirBSD). كأثر جانبي ، يتم إيقاف تعيين هذا العلم
دعامة الوضع ، والذي يمكن إعادة تشغيله يدويًا ، و POSIX الوضع (ما لم
يتم تمكين كلاهما في نفس الوقت).

-o vi
تفعيل vi(1) - مثل تحرير سطر الأوامر (الأصداف التفاعلية فقط). يرى Vi
التحرير طريقة للتوثيق والقيود.

-o سادسا مكتملا
في تحرير سطر الأوامر vi ، قم بتنفيذ الأوامر واسم الملف عند الهروب (^ [)
يتم إدخاله في وضع الأوامر.

-o سادسا التبويب
في تحرير سطر الأوامر vi ، قم بإكمال الأمر واسم الملف عندما تكون علامة التبويب (^ I)
دخلت في وضع الإدراج. هذا هو الافتراضي.

-o فيراو
بدون تأثير. في غلاف Korn الأصلي ، ما لم يكن فيراو تم تعيين الأمر vi-
سوف يسمح وضع الخط لـ الكتابة البعيدة(4) يقوم السائق بالعمل حتى يتم إدخال ESC (^ [).
مكش دائمًا في وضع viraw.

يمكن أيضًا استخدام هذه الخيارات عند استدعاء الغلاف. المجموعة الحالية من
خيارات (بأسماء أحادية الحرف) يمكن العثور عليها في المعلمة "$ -". طقم -o مع
لا يوجد اسم خيار يسرد جميع الخيارات وما إذا كان كل منها قيد التشغيل أو الإيقاف ؛ طقم +o سوف
اطبع الأسماء الطويلة لجميع الخيارات الموجودة حاليًا. في إصدار مستقبلي ، طقم
+o سوف تتصرف متوافقة مع POSIX وستعمل أوامر الطباعة لاستعادة الخيارات الحالية
بدلا من ذلك.

الوسائط المتبقية ، إن وجدت ، هي معلمات موضعية ويتم تخصيصها بالترتيب لـ
المعلمات الموضعية (مثل 1 دولار ، 2 دولار ، إلخ). إذا كانت الخيارات تنتهي بـ "-" وهناك
ليست هناك وسيطات متبقية ، يتم مسح جميع المعلمات الموضعية. إذا لم يكن هناك خيارات أو
يتم إعطاء الوسيطات ، ويتم طباعة قيم جميع الأسماء. للتاريخ غير معروف
الأسباب ، يتم التعامل مع خيار "-" وحيد بشكل خاص - يمسح كلا الخيارين -v و -x
خيارات.

نقل [عدد]
المعلمات الموضعية عدد+ 1، عدد+2 ، وما إلى ذلك ، تمت إعادة تسميتها إلى "1" ، "2" ، إلخ.
عدد الافتراضي إلى 1.

النوم ثواني
يوقف التنفيذ لمدة لا تقل عن ثواني محدد كقيمة عشرية موجبة
مع جزء كسري اختياري. قد يستمر تسليم الإشارة في التنفيذ في وقت سابق.

مصدر ملف [الأرجنتين ]
اعجاب . (“نقطة”) ، فيما عدا أنه يتم إلحاق دليل العمل الحالي بالبحث
المسار (GNU سحق تمديد).

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

تجربه بالعربي التعبير
[ التعبير ]
تجربه بالعربي بتقييم التعبير وإرجاع الحالة الصفرية إذا كانت صحيحة ، أو 1 إذا كانت خطأ ، أو أكبر
من 1 إذا كان هناك خطأ. يتم استخدامه عادة كأمر الشرط لـ if و
في حين صياغات. يتم اتباع الروابط الرمزية للجميع ملف تعبيرات ما عدا -h و
-L.

تتوفر التعبيرات الأساسية التالية:

-a ملف ملف موجودا.

-b ملف ملف هو جهاز خاص بلوك.

-c ملف ملف هو جهاز خاص بالشخصية.

-d ملف ملف انه دليل.

-e ملف ملف موجودا.

-f ملف ملف هو ملف عادي.

-G ملف ملفالمجموعة هي معرف مجموعة القذيفة الفعال.

-g ملف ملفوضع تعيين بت مجموعة تعيينات.

-H ملف ملف هو دليل يعتمد على السياق (مفيد فقط في HP-UX).

-h ملف ملف هو ارتباط رمزي.

-k ملف ملفوضع الخاص به لزج(8) مجموعة بت.

-L ملف ملف هو ارتباط رمزي.

-O ملف ملفالمالك هو معرف مستخدم shell الفعال.

-o خيار قذيفة خيار تم تعيينه (انظر طقم الأمر أعلاه للحصول على قائمة
خيارات). كامتداد غير قياسي ، إذا كان الخيار يبدأ بـ
"!" ، تم رفض الاختبار ؛ يفشل الاختبار دائمًا إذا خيار
غير موجود (لذا فإن [-o foo -o -o! foo] تعود صحيحة إذا وفقط
إذا كان الخيار فو موجود). يمكن تحقيق نفس الشيء مع [-o؟ foo]
كما هو الحال في AT&T UNIX شلن كيني 93. خيار يمكن أيضًا أن يكون العلم القصير بقيادة
إما "-" أو "+" (بدون نفي منطقي) ، على سبيل المثال "-x" أو "+ x"
بدلاً من "xtrace".

-p ملف ملف هو أنبوب مسمى (FIFO).

-r ملف ملف موجود ومقروء.

-S ملف ملف هو يونيكس(4) -مقبس المجال.

-s ملف ملف ليس فارغا.

-t fd واصف الملف fd هو الكتابة البعيدة(4) جهاز.

-u ملف ملفوضع مجموعة بت setuid.

-w ملف ملف موجود وقابل للكتابة.

-x ملف ملف موجود وقابل للتنفيذ.

file1 -لا file2 file1 أحدث من file2 or file1 موجود و file2 لا.

file1 -لا file2 file1 أقدم من file2 or file2 موجود و file1 لا.

file1 -ef file2 file1 هو نفس ملف file2.

سلسلة سلسلة طوله غير صفري.

-n سلسلة سلسلة ليس فارغا.

-z سلسلة سلسلة فارغ.

سلسلة = سلسلة السلاسل متساوية.

سلسلة == سلسلة السلاسل متساوية.

سلسلة > سلسلة معامل السلسلة الأول أكبر من معامل السلسلة الثاني.

سلسلة < سلسلة معامل السلسلة الأول أقل من معامل السلسلة الثاني.

سلسلة != سلسلة السلاسل ليست متساوية.

عدد -مكافئ عدد تقارن الأرقام بالتساوي.

عدد -نعم عدد تقارن الأرقام ولا تتساوى.

عدد - جي عدد تقارن الأعداد أكبر من أو تساوي.

عدد -Gt عدد تقارن الأرقام أكبر من.

عدد -The عدد تقارن الأرقام أصغر من أو يساوي.

عدد -لتر عدد تقارن الأرقام أقل من.

التعبيرات الأساسية المذكورة أعلاه ، حيث يكون للمشغلين الأحاديين الأسبقية على الثنائي
عوامل التشغيل ، يمكن دمجها مع العوامل التالية (المدرجة بترتيب تصاعدي
الأسبقية):

expr -o expr المنطقي OR.
expr -a expr المنطقية AND.
! expr المنطقي لا.
(expr) التجميع.

لاحظ أن الرقم قد يكون في الواقع تعبيرًا حسابيًا ، مثل الرياضيات
مصطلح أو اسم متغير عدد صحيح:

س = 1 ؛ يتم تقييم ["x" -eq 1] إلى true

لاحظ أنه يتم تطبيق بعض القواعد الخاصة (بإذن من POSIX) إذا كان عدد
الحجج ل تجربه بالعربي أو داخل الأقواس [ ] أقل من خمسة: إذا كانت "!"
يمكن تجريد الحجج بحيث تبقى واحدة إلى ثلاث حجج فقط ، ثم
يتم تنفيذ المقارنة المخفضة ؛ (بفضل XSI) بين قوسين \( \) أربعة أقل و
أشكال من ثلاث حجة إلى شكلين وسيطة واحدة ، على التوالي ؛ ثلاث حجة
تفضل النماذج في النهاية العمليات الثنائية ، متبوعة بالنفي والأقواس
خفض؛ تفضل الأشكال ذات الوسيطتين والأربع حجج النفي متبوعًا بأقواس ؛ ال
شكل الحجة الواحدة يعني دائمًا -n.

ملاحظات: من الأخطاء الشائعة استخدام "if [$ foo = bar]" والذي يفشل إذا كانت المعلمة "foo"
هي NULL أو غير مضبوطة ، إذا كانت تحتوي على مسافات مضمنة (على سبيل المثال ، ثماني بتات IFS) ، أو إذا كانت أحادية
عامل مثل "!" أو '-n". استخدم اختبارات مثل "if [x" $ foo "= x" bar "]" بدلاً من ذلك ، أو
عامل تشغيل القوس المزدوج "if [[$ foo = bar]]" أو لتجنب مطابقة النمط (راجع [[
أعلاه): "إذا [[$ foo =" $ bar "]]"

[[ ]] البناء ليس فقط أكثر أمانًا للاستخدام ولكنه أيضًا أسرع في كثير من الأحيان.

الوقت [-p] [خط أنابيب]
إذا كان خط أنابيب يتم الإبلاغ عن الأوقات المستخدمة لتنفيذ خط الأنابيب. إذا كان الجواب لا
يتم إعطاء خط الأنابيب ، ثم وقت المستخدم والنظام الذي تستخدمه الصدفة نفسها ، وكل شيء
يتم الإبلاغ عن الأوامر التي تم تشغيلها منذ بدئها. الأوقات التي ذكرت
الوقت الحقيقي (الوقت المنقضي من البداية إلى النهاية) ، وقت وحدة المعالجة المركزية للمستخدم (الوقت المستغرق
قيد التشغيل في وضع المستخدم) ، ووقت وحدة المعالجة المركزية للنظام (الوقت المستغرق في التشغيل في وضع kernel).
يتم الإبلاغ عن الأوقات للخطأ القياسي ؛ تنسيق الإخراج هو:

0m0.00s حقيقي 0m0.00s مستخدم 0m0.00s نظام

إذا كان -p يتم إعطاء الخيار الناتج أطول قليلاً:

0.00 الحقيقي
المستخدم 0.00
النظام 0.00

من الخطأ تحديد -p الخيار ما لم خط أنابيب هو أمر بسيط.

لا تؤثر عمليات إعادة التوجيه البسيطة للخطأ المعياري على ناتج ملف الوقت أمر:

وقت النوم 1 2> ملف
$ {وقت النوم 1 ؛ } 2> ملف

أوقات الأمر الأول لا تذهب إلى "afile" ، لكن أوقات الأمر الثاني تفعل ذلك.

مرات اطبع أوقات المستخدم والنظام المتراكمة المستخدمة بواسطة كل من shell والعمليات
أن القذيفة التي خرجت منها. تنسيق الإخراج هو:

0 م0.00 ث 0 م0.00 ث
0 م0.00 ث 0 م0.00 ث

فخ n [بسيطة ]
إذا كان المعامل الأول عددًا صحيحًا عشريًا بدون إشارة ، فسيؤدي ذلك إلى إعادة تعيين جميع الإشارات المحددة
إلى الإجراء الافتراضي ، أي هو نفس الاتصال فخ بعلامة ناقص ("-") مثل
معالج، تليها الحجج (n [بسيطة ]) ، وكلها تعامل على أنها
.

فخ [معالج بسيطة ]
يضبط معالج الملاءمة الذي سيتم تنفيذه عند أي من المحدد بسيطةق هي
تم الاستلام. معالج إما أن تكون سلسلة فارغة ، مما يشير إلى أن الإشارات يجب أن تكون
تم تجاهله ، علامة ناقص ("-") ، للإشارة إلى أن الإجراء الافتراضي يجب أن يتم اتخاذه من أجله
الإشارات (انظر بسيطة(3)) ، أو سلسلة تحتوي على أوامر shell ليتم تنفيذها في
الفرصة الأولى (أي عند اكتمال الأمر الحالي أو قبل الطباعة
موجه PS1 التالي) بعد استلام إحدى الإشارات. بسيطة هو اسم
إشارة (مثل PIPE أو ALRM) أو رقم الإشارة (انظر قتل -l أمر
في الاعلى).

هناك نوعان من الإشارات الخاصة: EXIT (المعروفة أيضًا باسم 0) ، والتي يتم تنفيذها عندما يكون ملف
shell على وشك الخروج ، ويتم تنفيذ ERR بعد حدوث خطأ ؛ خطأ
شيء من شأنه أن يتسبب في خروج الصدفة إذا كان طقم -e or طقم -o إريكست خيار
ومن المقرر. يتم تنفيذ معالجات EXIT في بيئة آخر تنفيذ
أمر.

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

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

مصيدة DEBUG الأصلية لقذيفة Korn والتعامل مع مصائد ERR و EXIT في
وظائف لم يتم تنفيذها بعد.

صحيح أمر يخرج بقيمة صفرية.

شامل [[+ -البنرت] [-L[n]] [-R[n]] [-Z[n]] [-i[n]] | -f [-التكس]] [الاسم [=قيمنا] ]
منضدة [[+ -البنرت] [-LRZ[n]] [-i[n]] | -f [-التكس]] [الاسم [=قيمنا] ]
عرض أو تعيين سمات المعلمات. مع عدم وجود الاسم الوسائط ، سمات المعلمات
يتم عرض؛ إذا لم يتم استخدام أي خيارات ، فإن السمات الحالية لجميع المعلمات هي
طبع باسم منضدة أوامر. إذا تم تقديم خيار (أو "-" بدون حرف خيار) ،
تتم طباعة جميع المعلمات وقيمها بالسمات المحددة ؛ إذا كانت الخيارات
يتم تقديمها مع "+" ، لا تتم طباعة قيم المعلمات.

If الاسم يتم إعطاء الوسيطات ، يتم تعيين سمات المعلمات المسماة (-) أو
مسح (+). يمكن تحديد قيم المعلمات بشكل اختياري. ل الاسم[*]، ال
يؤثر التغيير على المصفوفة بأكملها ، ولا يجوز تحديد أي قيمة.

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

متى -f يستخدم ، منضدة يعمل على سمات الوظائف. كما هو الحال مع
المعلمات ، إذا لم يكن كذلك الاسم يتم إعطاء الوسيطات ، ويتم سرد الوظائف مع قيمها
(أي التعريفات) ما لم يتم تقديم الخيارات بـ "+" ، وفي هذه الحالة فقط
يتم الإبلاغ عن أسماء الوظائف.

-a سمة الصفيف المفهرسة.

-f وضع الوظيفة. عرض أو تعيين الوظائف وخصائصها ، بدلاً من
المعلمات.

-i[n] سمة عدد صحيح. n يحدد الأساس المطلوب استخدامه عند عرض العدد الصحيح
(إذا لم يكن محددًا ، فسيتم استخدام الأساس المعطى في التخصيص الأول).
قد يتم تعيين قيم تحتوي على الحساب للمعلمات التي تحتوي على هذه السمة
التعبيرات.

-L[n] سمة ضبط اليسار. n يحدد عرض الحقل. لو n غير محدد ،
العرض الحالي للمعلمة (أو عرض القيمة الأولى المعينة لها)
يستخدم. المسافة البيضاء البادئة (والأصفار ، إذا تم استخدامها مع الامتداد -Z الخيار) هو
جردت. إذا لزم الأمر ، فإن القيم إما مقطوعة أو مبطنة بالمساحة لتلائم
عرض المجال.

-l سمة صغيرة. يتم تحويل جميع الأحرف الكبيرة في القيم إلى
أحرف صغيرة. (في غلاف Korn الأصلي ، كانت هذه المعلمة تعني "عددًا صحيحًا طويلاً"
عند استخدامها مع -i اختيار.)

-n إنشاء متغير منضم (مرجع الاسم): أي وصول إلى المتغير الاسم
سوف يصل إلى المتغير قيمنا في النطاق الحالي (هذا يختلف عن
AT&T UNIX شلن كيني 93!) بدلاً من. يختلف أيضًا عن AT&T UNIX شلن كيني 93 غير أن
قيمنا تم تقييمه بشكل كسول في ذلك الوقت الاسم يتم الوصول إليه. هذا يمكن استخدامه من قبل
وظائف للوصول إلى المتغيرات التي يتم تمرير أسمائها كمعاملات ، بدلاً من ذلك
استخدام وحدة التقييم.

-p اكتملت الطباعة منضدة الأوامر التي يمكن استخدامها لإعادة إنشاء السمات
وقيم المعلمات.

-R[n] الحق في ضبط السمة. n يحدد عرض الحقل. لو n ليس
المحدد ، العرض الحالي للمعلمة (أو عرض أولها
القيمة المعينة). يتم تجريد المسافات الزائدة. اذا كان ضروري،
يتم تجريد القيم من الأحرف البادئة أو تبطين المساحة لجعلها
تناسب عرض المجال.

-r سمة للقراءة فقط. قد لا يتم تعيين معلمات بهذه السمة إلى
أو unset. بمجرد تعيين هذه السمة ، لا يمكن إيقاف تشغيلها.

-t سمة العلامة. ليس له معنى للقذيفة. المقدمة لاستخدام التطبيق.

للوظائف ، -t هي سمة التتبع. عندما يعمل مع التتبع
السمة يتم تنفيذها ، و com.xtrace (-x) تم تشغيل خيار shell مؤقتًا
على.

-U سمة عدد صحيح بدون إشارة. يتم طباعة الأعداد الصحيحة كقيم غير موقعة (دمج
مع الالجائزة -i خيار). هذا الخيار ليس في غلاف Korn الأصلي.

-u سمة الأحرف الكبيرة. يتم تحويل جميع الأحرف الصغيرة في القيم إلى
الأحرف الكبيرة. (في غلاف Korn الأصلي ، كانت هذه المعلمة تعني "بدون توقيع
عدد صحيح "عند استخدامه مع -i الخيار الذي يعني أن الأحرف الكبيرة
لا تستخدم مطلقًا لقواعد أكبر من 10. راجع -U اختيار.)

للوظائف ، -u هي السمة غير المعرفة. يرى وظائف أعلاه ل
الآثار المترتبة على هذا.

-x سمة التصدير. يتم وضع المعلمات (أو الوظائف) في بيئة
أي أوامر منفذة. لم يتم تنفيذ الوظائف المصدرة بعد.

-Z[n] سمة تعبئة صفرية. إذا لم يتم دمجها مع -L، هذا هو نفس -R، إلا
يتم استخدام حشوة صفرية بدلاً من المساحة المتروكة. للأعداد الصحيحة ، الرقم
بدلا من القاعدة مبطن.

إذا كان أي من -i, -L, -l, -R, -U, -uالطرق أو -Z تم تغيير الخيارات ، كل الآخرين من هذا
set تم مسحها ، ما لم يتم تقديمها أيضًا في نفس سطر الأوامر.

ulimit [-aBCcdefHilMmnOPpqrSsTtVvw] [قيمنا]
عرض أو تعيين حدود العملية. إذا لم يتم استخدام أي خيارات ، فإن حد حجم الملف (-f) هو
يفترض. قيمنا، إذا تم تحديده ، فقد يكون إما تعبيرًا حسابيًا أو كلمة
"غير محدود". تؤثر الحدود على الغلاف وأي عمليات تم إنشاؤها بواسطة الغلاف
بعد فرض حد. لاحظ أن بعض الأنظمة قد لا تسمح بحدود
زاد بمجرد تعيينهم. لاحظ أيضًا أن أنواع الحدود المتاحة هي نظام
التابعة - بعض الأنظمة لديها فقط -f الحد.

-a عرض كل الحدود ؛ إلا إذا -H قيد الاستخدام ، يتم عرض حدود ناعمة.

-B n اضبط حجم المخزن المؤقت للمقبس على n كيبي بايت.

-C n قم بتعيين عدد سلاسل الرسائل المخزنة مؤقتًا على n.

-c n افرض حدًا للحجم يبلغ n كتل على حجم مقالب اللب.

-d n افرض حدًا للحجم يبلغ n كيبي بايت على حجم منطقة البيانات.

-e n اضبط أقصى درجات اللطف على n.

-f n افرض حدًا للحجم يبلغ n كتل على الملفات التي كتبها قذيفة وطفلها
العمليات (يمكن قراءة الملفات من أي حجم).

-H قم بتعيين الحد الثابت فقط (الافتراضي هو تعيين كل من الحدود الصارمة واللينة).

-i n اضبط عدد الإشارات المعلقة على n.

-l n فرض حد n kibibytes على مقدار الذاكرة المادية المقفلة (السلكية).

-M n اضبط الذاكرة المقفلة AIO على n كيبي بايت.

-m n فرض حد n kibibytes على مقدار الذاكرة الفعلية المستخدمة.

-n n فرض حد n واصفات الملفات التي يمكن فتحها مرة واحدة.

-O n اضبط عدد عمليات AIO على n.

-P n حدد عدد الخيوط لكل عملية بـ n.

-p n فرض حد n العمليات التي يمكن أن يديرها المستخدم في وقت واحد.

-q n حدد حجم قوائم انتظار رسائل POSIX بـ n بايت.

-r n عيِّن أقصى أولوية في الوقت الحقيقي على n.

-S قم بتعيين الحد المرن فقط (الإعداد الافتراضي هو تعيين كل من الحدود الصارمة والناعمة).

-s n افرض حدًا للحجم يبلغ n كيبي بايت على حجم منطقة المكدس.

-T n افرض حدًا زمنيًا قدره n الثواني الحقيقية التي ستستخدمها كل عملية.

-t n افرض حدًا زمنيًا قدره n ثواني وحدة المعالجة المركزية التي تم قضاؤها في وضع المستخدم ليتم استخدامها من قبل كل منها
.

-V n اضبط عدد شاشات vnode على Haiku على n.

-v n فرض حد n kibibytes على مقدار الذاكرة الظاهرية (مساحة العنوان)
مستخدم.

-w n فرض حد n kibibytes على مقدار مساحة المبادلة المستخدمة.

بقدر ما أو إلى هذا الحد ulimit المعنية ، كتلة هي 512 بايت.

Umask [-S] [قناع]
قم بعرض أو تعيين قناع إنشاء إذن الملف ، أو Umask (انظر Umask(2)). إذا كان -S
يتم استخدام الخيار ، يكون القناع المعروض أو المحدد رمزيًا ؛ خلاف ذلك ، فهو ثماني
عدد.

الأقنعة الرمزية هي مثل تلك المستخدمة من قبل شمود(1). عند استخدامها ، يصفون ماذا
قد يتم توفير الأذونات (على عكس الأقنعة الثمانية التي تعني فيها مجموعة البت
يتم مسح البت المقابل). على سبيل المثال ، "ug = rwx، o =" يعين القناع على هذا النحو
لن تكون الملفات قابلة للقراءة أو الكتابة أو التنفيذ بواسطة "الآخرين" ، وهي مكافئة
(في معظم الأنظمة) إلى القناع الثماني "007".

unalias. [-اتت] [الاسم ]
تمت إزالة الأسماء المستعارة للأسماء المحددة. إذا كان -a يستخدم الخيار ، جميع الأسماء المستعارة
تتم إزالة. إذا كان -t or -d يتم استخدام الخيارات ، يتم تنفيذ العمليات المشار إليها
الخروج على الأسماء المستعارة المتعقبة أو الدليل ، على التوالي.

غير مصلد [-fv] المعلمة
قم بإلغاء تحديد المعلمات المسماة (-v، الافتراضي) أو وظائف (-f). مع المعلمة[*] ،
السمات محفوظة ، والقيم فقط لم يتم ضبطها.

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

انتظر [وظيفة ]
انتظر حتى تنتهي المهمة (المهام) المحددة. حالة الخروج من انتظر هو هذا الأخير
وظيفة محددة إذا تم قتل الوظيفة الأخيرة بواسطة إشارة ، فإن حالة الخروج هي 128 +
رقم الإشارة (انظر قتل -l حالة الخروج فوق)؛ إذا لم تستطع الوظيفة المحددة الأخيرة
يمكن العثور عليها (لأنها لم تكن موجودة أو انتهت بالفعل) ، حالة الخروج من انتظر
هو 127. انظر وظيفة مراقبة أدناه لتنسيق وظيفة. انتظر سيعود إذا كانت الإشارة
التي تم ضبط مصيدة لها ، أو إذا كانت إشارة SIGHUP أو SIGINT أو SIGQUIT
تم استلامه.

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

من أين [-بف] [الاسم ]
بدون ال -v الخيار ، هو نفس أمر -v، باستثناء عدم طباعة الأسماء المستعارة
كأمر مستعار. مع ال -v الخيار ، هو بالضبط نفس أمر -V. في
في كلتا الحالتين ، فإن -p يختلف الخيار: لا يتأثر مسار البحث بـ من أين، لكن
البحث مقصور على المسار.

وظيفة مراقبة
يشير التحكم في الوظيفة إلى قدرة شل على مراقبة الوظائف التي هي عمليات أو
مجموعات من العمليات التي تم إنشاؤها للأوامر أو خطوط الأنابيب. كحد أدنى ، تحافظ القذيفة على المسار الصحيح
حالة الوظائف الخلفية (أي غير المتزامنة) الموجودة حاليًا ؛ هذا
يمكن عرض المعلومات باستخدام ملف وظائف أوامر. إذا تم تمكين التحكم في الوظيفة بشكل كامل
(باستخدام طقم -m or طقم -o مراقب) ، كما هو الحال مع الأصداف التفاعلية ، عمليات الوظيفة
يتم وضعها في مجموعة العمليات الخاصة بهم. يمكن إيقاف المهام الأمامية بكتابة التعليق
حرف من المحطة (عادةً ^ Z) ، يمكن إعادة تشغيل الوظائف إما في المقدمة أو
الخلفية باستخدام fg و bg الأوامر ، ويتم حفظ حالة الجهاز أو استعادته
عندما يتم إيقاف أو إعادة تشغيل مهمة في المقدمة ، على التوالي.

لاحظ أن الأوامر فقط هي التي تنشئ العمليات (مثل الأوامر غير المتزامنة والقشرة الفرعية
الأوامر ، والأوامر غير المضمنة وغير الوظيفية) ؛ أوامر مثل اقرأ لا تستطيع
يكون.

عندما يتم إنشاء وظيفة ، يتم تعيين رقم الوظيفة لها. بالنسبة للأصداف التفاعلية ، هذا الرقم هو
مطبوعة داخل "[..]" ، متبوعة بمعرفات العملية للعمليات في الوظيفة عندما يكون ملف
يتم تشغيل الأمر غير المتزامن. قد تتم الإشارة إلى وظيفة في bg, fg, وظائف, قتلو انتظر
الأوامر إما عن طريق معرف العملية للعملية الأخيرة في خط أنابيب الأوامر (كما تم تخزينه في
ال $! المعلمة) أو بادئة رقم الوظيفة بعلامة النسبة المئوية ('٪'). نسبة أخرى
يمكن أيضًا استخدام التسلسلات للإشارة إلى الوظائف:

٪ + | ٪٪ | ٪ الوظيفة التي تم إيقافها مؤخرًا ، أو الأقدم في حالة عدم وجود وظائف متوقفة
تشغيل الوظيفة.

٪ - الوظيفة التي من شأنها أن تكون %+ وظيفة إذا لم يكن هذا الأخير موجودًا.

%n الوظيفة مع رقم الوظيفة n.

%?سلسلة الوظيفة مع أمرها الذي يحتوي على السلسلة سلسلة (يحدث خطأ إذا
وظائف متعددة مطابقة).

%سلسلة تبدأ المهمة بأمرها بالسلسلة سلسلة (يحدث خطأ إذا
وظائف متعددة مطابقة).

عندما تتغير حالة إحدى الوظائف (على سبيل المثال ، تنتهي وظيفة في الخلفية أو تتوقف الوظيفة الأمامية) ، فإن ملف
تقوم shell بطباعة معلومات الحالة التالية:

[عدد] علم الحالة أمر

أين ...

عدد هو رقم الوظيفة للوظيفة ؛

علم هو الحرف "+" أو "-" إذا كانت الوظيفة هي %+ or %- الوظيفة ، على التوالي ، أو الفضاء
إذا لم يكن كذلك ؛

الحالة يشير إلى الحالة الحالية للوظيفة ويمكن أن يكون:

منتهي [عدد]
تم إنهاء الوظيفة. عدد هي حالة الخروج من الوظيفة التي تم حذفها
إذا كانت الحالة صفر.

قيد التشغيل لم يتم إيقاف المهمة أو الخروج منها (لاحظ أن التشغيل لا يتوقف
يعني بالضرورة استهلاك وقت وحدة المعالجة المركزية - يمكن حظر العملية
في انتظار حدث ما).

توقفت [بسيطة]
تم إيقاف الوظيفة من قبل المشار إليه بسيطة (إذا لم يتم إعطاء إشارة ، فإن
تم إيقاف المهمة بواسطة SIGTSTP).

وصف الإشارة ["الأساسية ملقاة"]
تم قتل الوظيفة بواسطة إشارة (على سبيل المثال خطأ في الذاكرة ، قطع الاتصال) ؛ يستخدم قتل -l
للحصول على قائمة أوصاف الإشارات. تشير رسالة "الإلقاء الأساسي"
خلقت العملية ملفًا أساسيًا.

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

عند إجراء محاولة للخروج من الغلاف أثناء وجود وظائف في حالة الإيقاف ، فإن ملف
تحذر shell المستخدم من وجود وظائف متوقفة ولا تخرج. إذا كانت محاولة أخرى
على الفور للخروج من الغلاف ، يتم إرسال إشارة SIGHUP والقذيفة إلى المهام المتوقفة
مخارج. وبالمثل ، إذا كان nohup لم يتم تعيين الخيار وهناك وظائف قيد التشغيل عند محاولة
للخروج من قذيفة تسجيل الدخول ، تحذر الصدفة المستخدم ولا تخرج. إذا كان آخر
يتم إجراء محاولة على الفور للخروج من shell ، ويتم إرسال إشارة SIGHUP و
مخارج القشرة.

POSIX طريقة
الدخول طقم -o POSIX الوضع سوف يسبب مكش لتكون أكثر توافقًا مع POSIX في بعض الأماكن
حيث تختلف الافتراضات أو الآراء. لاحظ أن مكش ستظل تعمل مع غير الموقعة
32 بت الحساب. يستخدم lksh إذا كان الحساب على المضيف التداول الطويل نوع البيانات ، كاملة مع ISO C
مطلوب سلوك غير محدد ؛ الرجوع إلى lksh(1) صفحة دليل للحصول على التفاصيل. كثير اخر
تاريخية ، AT&T UNIX KSH- يمكن تعطيل الخلافات المتوافقة أو المعتادة باستخدام هذا
وضع؛ هؤلاء هم:

· غنو سحق إعادة توجيه الإدخال / الإخراج &>ملف لم يعد مدعومًا.

· يتم توارث واصفات الملفات التي تم إنشاؤها بواسطة عمليات إعادة توجيه الإدخال / الإخراج بواسطة العمليات التابعة.

· يتم تفسير الأعداد التي تحتوي على صفر بادئ على أنها رقم ثماني.

·صدى لا يفسر المدمج الخطوط المائلة العكسية ويدعم فقط الخيار الدقيق "-n".

· ... (القائمة غير كاملة وقد تتغير لـ R53)

SH طريقة
وضع التوافق؛ مخصص للاستخدام مع البرامج النصية القديمة التي لا يمكن إصلاحها بسهولة ؛ ال
التغييرات هي كما يلي:

· غنو سحق إعادة توجيه الإدخال / الإخراج &>ملف لم يعد مدعومًا.

· يتم توارث واصفات الملفات التي تم إنشاؤها بواسطة عمليات إعادة توجيه الإدخال / الإخراج بواسطة العمليات التابعة.

·صدى لا يفسر المدمج الخطوط المائلة العكسية ويدعم فقط الخيار الدقيق "-n".

· ... (القائمة غير كاملة وقد تتغير لـ R53)

تفاعلي إدخال خط التحرير
يدعم الغلاف ثلاثة أوضاع لقراءة أسطر الأوامر من ملف الكتابة البعيدة(4) بشكل تفاعلي
جلسة يتحكم فيها ايماكس, com.gmacsو vi خيارات (يمكن تعيين واحد منها على الأكثر عند
مرة واحدة). الافتراضي هو ايماكس. يمكن ضبط أوضاع التحرير بشكل صريح باستخدام ملف طقم مدمج.
إذا لم يتم تمكين أي من هذه الخيارات ، فإن الغلاف يقرأ الأسطر ببساطة باستخدام العادي الكتابة البعيدة4
سائق. إذا كان ايماكس or com.gmacs تم تعيين الخيار ، تسمح الصدفة بتحرير يشبه emacs لملف
يأمر؛ بالمثل ، إذا كان vi تم تعيين الخيار ، تسمح القشرة بتحرير ملفات
يأمر. يتم وصف هذه الأوضاع بالتفصيل في الأقسام التالية.

في أوضاع التحرير هذه ، إذا كان الخط أطول من عرض الشاشة (انظر الأعمدة
المعلمة) ، يتم عرض الحرف ">" أو "+" أو "<" في العمود الأخير للإشارة إلى ذلك
هناك المزيد من الأحرف بعد الوظيفة الحالية وقبلها وبعدها أو قبلها ،
على التوالى. يتم تمرير الخط أفقيًا حسب الضرورة.

يتم دفع الأسطر المكتملة إلى السجل ، ما لم تبدأ بـ IFS ثماني بتات أو IFS
مسافة بيضاء ، أو نفس السطر السابق.

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

فيما يلي قائمة بأوامر التحرير المتاحة. يبدأ كل وصف بامتداد
اسم الأمر ، مُلحق بنقطتين ؛ و [n] (إذا كان من الممكن أن يبدأ الأمر بامتداد
عدد)؛ وأي مفاتيح يرتبط بها الأمر افتراضيًا ، مكتوبة باستخدام علامة الإقحام على سبيل المثال
تتم كتابة حرف ASCII ESC كـ ^ [. تسلسلات التحكم هذه ليست حساسة لحالة الأحرف.
يتم إدخال بادئة العد لأمر باستخدام التسلسل ^ [n، حيث n هو تسلسل من 1
أو أكثر من الأرقام. ما لم يتم تحديد خلاف ذلك ، إذا تم حذف العدد ، فسيتم تعيينه افتراضيًا على 1.

لاحظ أنه يتم استخدام أسماء أوامر التحرير فقط مع ملف ربط يأمر. علاوة على ذلك ، كثير
أوامر التحرير مفيدة فقط في المحطات الطرفية ذات المؤشر المرئي. الارتباطات الافتراضية
تم اختيارها لتشبه روابط مفاتيح Emacs المقابلة. المستخدمين الكتابة البعيدة(4) شخصيات
(مثل ERASE) ملزمة ببدائل معقولة وتجاوز الارتباطات الافتراضية.

إحباط: ^ ج ، ^ ز
إحباط الأمر الحالي ، قم بإفراغ المخزن المؤقت للخط واضبط حالة الخروج على
توقف.

الإدخال التلقائي: [n]
ببساطة يتسبب في ظهور الحرف كمدخلات حرفية. معظم الشخصيات العادية
ملتزمون بهذا.

حرف للخلف: [n] ^ B ، ^ XD ، ANSI-CurLeft ، PC-CurLeft
يحرك المؤشر للخلف n حرفا.

كلمة متخلفة: [n] ^ [b، ANSI-Ctrl-CurLeft، ANSI-Alt-CurLeft
يحرك المؤشر إلى الخلف إلى بداية الكلمة ؛ تتكون الكلمات من
أبجدية رقمية وشرطة سفلية ("_") وأحرف علامة الدولار ("$").

بداية التاريخ: ^ [
ينتقل إلى بداية التاريخ.

بداية السطر: ^ A ، ANSI-Home ، PC-Home
ينقل المؤشر إلى بداية سطر الإدخال الذي تم تحريره.

تكبير الكلمة بالأحرف الكبيرة: [n] ^ [C، ^ [c
الأحرف الكبيرة في الحرف الأول في التالي n كلمات ، وترك المؤشر بعد النهاية
من الكلمة الأخيرة.

شاشة واضحة: ^ [^ L
يطبع تسلسلًا قابلًا للتكوين في وقت الترجمة لمسح الشاشة وإدخال المؤشر إلى المنزل ،
يعيد رسم الموجه بالكامل وسطر الإدخال المعدل حاليًا. التسلسل الافتراضي
يعمل مع جميع المحطات القياسية تقريبًا.

التعليق: ^ [#
إذا لم يبدأ السطر الحالي بحرف تعليق ، فسيتم إضافة حرف في
يتم إدخال بداية السطر والخط (كما لو تم الضغط على العودة) ؛
وإلا ، تتم إزالة أحرف التعليق الموجودة ويوضع المؤشر في
بداية السطر.

مكتمل: ^ [^ [
يكمل تلقائيًا بقدر ما يكون فريدًا من اسم الأمر أو اسم الملف
تحتوي على المؤشر. إذا كان الأمر المتبقي بأكمله أو اسم الملف فريدًا ، فإن ملف
تتم طباعة space بعد اكتماله ، إلا إذا كان اسم دليل في هذه الحالة
تم إلحاق "/". إذا لم يكن هناك أمر أو اسم ملف بالكلمة الجزئية الحالية
كبادئة لها ، يتم إخراج حرف الجرس (عادةً ما يتسبب في إصدار صوت تنبيه).

الأمر الكامل: ^ X ^ [
يكمل تلقائيًا بقدر ما هو فريد من نوعه لاسم الأمر الذي يحتوي على الجزئي
كلمة تصل إلى المؤشر كبادئة لها ، كما في ملف إكمال الأمر أعلاه.

الملف الكامل: ^ [^ X
يكمل تلقائيًا بقدر ما هو فريد من نوعه لاسم الملف الذي يحتوي على الجزء
كلمة تصل إلى المؤشر كبادئة لها ، كما في ملف إكمال الأمر الموصوف أعلاه.

القائمة الكاملة: ^ أنا ، ^ [=
أكمل أكبر قدر ممكن من الكلمة الحالية ، واكتب ما هو ممكن
الإكمالات لذلك. إذا كان إكمال واحد فقط ممكنًا ، فقم بمطابقة في إكمال
الأمر أعلاه. لاحظ أن ^ I عادةً ما يتم إنشاؤه بواسطة مفتاح TAB (أداة الجدولة).

حذف حرف للخلف: [n] محو ، ^ ؟، ^ ح
الحذف n قبل المؤشر.

حذف حرف إعادة توجيه: [n] ANSI-Del ، PC-Del
الحذف n الأحرف بعد المؤشر.

حذف كلمة للخلف: [n] WERASE، ^ [^ ؟، ^ [^ H، ^ [h
الحذف n كلمات قبل المؤشر.

حذف كلمة إعادة توجيه: [n] ^ [د
يحذف الأحرف بعد المؤشر حتى نهاية n الكلمات.

أسفل التاريخ: [n] ^ N ، ^ XB ، ANSI-CurDown ، PC-CurDown
يقوم بالتمرير إلى الأمام في المخزن المؤقت للمحفوظات n خطوط (لاحقًا). كل سطر إدخال أصلا
يبدأ مباشرة بعد الإدخال الأخير في المخزن المؤقت للمحفوظات ، لذلك أسفل التاريخ ليس
مفيد حتى إما سجل البحث, سجل البحث متابعة or ما يصل التاريخ وكان
نفذت.

كلمة صغيرة: [n] ^ [L، ^ [l
أحرف صغيرة في اليوم التالي n الكلمات.

تحرير الخط: [n] ^ Xe
تحرير الخط n أو السطر الحالي ، إذا لم يتم تحديده ، بشكل تفاعلي. الفعلية
الأمر المنفذ هو fc -e $ {VISUAL: - $ {محرر: -vi}} n.

نهاية التاريخ: ^ [>
ينتقل إلى نهاية التاريخ.

نهاية السطر: ^ E ، ANSI-End ، PC-End
ينقل المؤشر إلى نهاية سطر الإدخال.

eot: ^ _
يعمل كنهاية للملف ؛ هذا مفيد لأن إدخال وضع التحرير يعطل الوضع العادي
تحديد عنوان الإدخال الطرفي.

eot أو الحذف: [n] ^ د
تصرف مثل إيوت إذا كان وحده على الخط ؛ يتصرف خلاف ذلك حذف حرف إلى الأمام.

خطأ: (غير ملزم)
خطأ (دق الجرس).

تبادل نقطة وعلامة: ^ X ^ X
يضع المؤشر حيث توجد العلامة ويضبط العلامة على مكان المؤشر.

توسيع ملف: ^ [*
لإلحاق "*" بالكلمة الحالية واستبدال الكلمة بالنتيجة
أداء ملف يتلألأ على الكلمة. إذا لم تتطابق أي ملفات مع النمط ، فسيكون الجرس
الدرجة.

إلى الأمام شار: [n] ^ F ، ^ XC ، ANSI-CurRight ، PC-CurRight
يحرك المؤشر إلى الأمام n حرفا.

كلمة إعادة توجيه: [n] ^ [f، ANSI-Ctrl-CurRight، ANSI-Alt-CurRight
تحريك المؤشر للأمام إلى نهاية ملف nالكلمة ال.

الانتقال إلى التاريخ: [n] ^ [ز
يذهب إلى رقم التاريخ n.

خط القتل: اقتل
يحذف سطر الإدخال بالكامل.

منطقة القتل: ^ دبليو
يحذف الإدخال بين المؤشر والعلامة.

قتل إلى eol: [n] ^ ك
يحذف الإدخال من المؤشر إلى نهاية السطر إذا n غير محدد
وإلا يحذف الأحرف بين المؤشر والعمود n.

القائمة: ^ [؟
يطبع قائمة مرتبة ومعمودة بأسماء الأوامر أو أسماء الملفات (إن وجدت) التي يمكنها ذلك
أكمل الكلمة الجزئية التي تحتوي على المؤشر. تم إلحاق "/" أسماء الدلائل
لهم.

أمر القائمة: ^ X؟
يطبع قائمة مرتبة ومعمودة بأسماء الأوامر (إن وجدت) التي يمكنها إكمال ملف
كلمة جزئية تحتوي على المؤشر.

قائمة ملف: ^ X ^ Y
يطبع قائمة مصنفة بأعمدة بأسماء الملفات (إن وجدت) يمكنها إكمال ملف
كلمة جزئية تحتوي على المؤشر. يتم إلحاق مؤشرات نوع الملف كما هو موضح
مع قائمة في الاعلى.

الخط الجديد: ^ J ، ^ M
يتسبب في معالجة سطر الإدخال الحالي بواسطة shell. المؤشر الحالي
قد يكون الموقف في أي مكان على الخط.

الخط الجديد والتالي: ^ O
يتسبب في معالجة سطر الإدخال الحالي بواسطة shell ، والسطر التالي من
يصبح التاريخ هو الخط الحالي. هذا مفيد فقط بعد ما يصل التاريخ,
سجل البحث or سجل البحث متابعة.

عدم المرجع: إنهاء
هذا لا يفعل شيئا.

البادئة 1: ^ [
يقدم تسلسل أوامر مكون من حرفين.

البادئة 2: ^ X ، ^ [[، ^ [O
يقدم تسلسل أوامر مكون من حرفين.

الكلمة السابقة: [n] ^ [. ، ^ [_
الكلمة الأخيرة ، أو ، إذا أعطيت ، nالكلمة السابقة (على أساس الصفر) من السابق (مكرر
يتم إدخال أمر التنفيذ ، والثاني الأخير ، والثالث الأخير ، وما إلى ذلك) في المؤشر. استخدام
أمر التحرير هذا يحذف العلامة.

اقتباس: ^ ^ ، ^ V.
يتم أخذ الحرف التالي حرفيًا وليس كأمر تحرير.

إعادة رسم: ^ L.
يعيد طباعة السطر الأخير من سلسلة المطالبة وسطر الإدخال الحالي على ملف جديد
الخط.

البحث عن حرف للخلف: [n] ^ [^]
ابحث للخلف في السطر الحالي عن ملف nتواجد الحرف التالي
كتبته.

بحث-حرف-إعادة توجيه: [n] ^]
ابحث للأمام في السطر الحالي عن ملف nتواجد الحرف التالي
كتبته.

تاريخ البحث: ^ R
أدخل وضع البحث المتزايد. يتم البحث في قائمة المحفوظات الداخلية إلى الوراء عن
أوامر مطابقة الإدخال. يؤدي الحرف "^" الأولي في سلسلة البحث إلى تثبيت ملف
يبحث. سيترك مفتاح الهروب وضع البحث. أوامر أخرى ، بما في ذلك التسلسلات
من الهروب البادئة -1 تليها البادئة -1 or البادئة -2 مفتاح سيتم تنفيذه بعد
مغادرة وضع البحث. ال إجهاض (^ G) سيستعيد الأمر سطر الإدخال من قبل
بدأ البحث. متتالي سجل البحث الأوامر تواصل البحث للخلف إلى
التكرار السابق التالي للنمط. يحتفظ المخزن المؤقت للمحفوظات فقط بملحق
عدد محدود من الخطوط يتم التخلص من الأقدم حسب الضرورة.

سجل البحث: ANSI-PgUp و PC-PgUp
البحث للخلف خلال المخزن المؤقت للتاريخ عن الأوامر التي تتطابق بدايتها مع
جزء من سطر الإدخال قبل المؤشر. عند استخدامه على سطر فارغ ، هذا له
نفس تأثير ما يصل التاريخ.

سجل البحث لأسفل: ANSI-PgDn، PC-PgDn
ابحث للأمام من خلال المخزن المؤقت للتاريخ عن الأوامر التي تتطابق بدايتها مع
جزء من سطر الإدخال قبل المؤشر. عند استخدامه على سطر فارغ ، هذا له
نفس تأثير أسفل التاريخ. هذا مفيد فقط بعد ما يصل التاريخ,
سجل البحث or سجل البحث متابعة.

أمر وضع علامة: ^ [
ضع العلامة في موضع المؤشر.

تبديل الأحرف: ^ T.
إذا كان في نهاية السطر ، أو إذا كان com.gmacs تم تعيين الخيار ، هذا يتبادل الاثنين
الشخصيات السابقة خلاف ذلك ، فإنه يتبادل الأحرف السابقة والحالية و
يحرك المؤشر حرفًا واحدًا إلى اليمين.

ما يصل التاريخ: [n] ^ P ، ^ XA ، ANSI-CurUp ، PC-CurUp
تمرير المخزن المؤقت للمحفوظات للخلف n خطوط (سابقًا).

كلمة مرفوعة: [n] ^ [U، ^ [u
الأحرف الكبيرة في اليوم التالي n الكلمات.

الإصدار: ^ [^ V
اعرض إصدار مكش. تتم استعادة المخزن المؤقت للتحرير الحالي بمجرد وجود مفتاح
مضغوط. تتم معالجة عملية الاستعادة بضغطة زر ، إلا إذا كانت مساحة.

نثر: ^ ص
يُدرج أحدث سلسلة نصية تم قتلها في موضع المؤشر الحالي.

يانك بوب: ^ [y
مباشرة بعد أ نثر، يستبدل السلسلة النصية المدرجة بالسلسلة التالية السابقة
قتل سلسلة نصية.

Vi التحرير طريقة
ملحوظة: وضع تحرير سطر الأوامر vi مهمل ، لكنه لا يزال يعمل. إنه نظيف 8 بت
ولكن على وجه التحديد لا يدعم UTF-8 أو MBCS.

محرر سطر الأوامر vi بتنسيق مكش له نفس الأوامر مثل vi(1) محرر مع
الاستثناءات التالية:

· تبدأ في وضع الإدراج.

· يوجد اسم الملف وأوامر إكمال الأوامر: = ، \ ، * ، ^ X ، ^ E ، ^ F ، و ،
اختياريا ، و .

·_ الأمر مختلف (بتنسيق مكش، إنه أمر الحجة الأخير ؛ في vi(1) يذهب
إلى بداية السطر الحالي).

·/ و G تتحرك الأوامر في الاتجاه المعاكس لـ j أمر.

· الأوامر التي لا معنى لها في محرر سطر واحد غير متوفرة (على سبيل المثال شاشة
أوامر الحركة و ex(1) - نمط القولون (:) أوامر).

اعجاب vi(1) ، هناك وضعان: وضع "إدراج" ووضع "الأمر". في وضع الإدراج ، معظم
يتم وضع الأحرف ببساطة في المخزن المؤقت في موضع المؤشر الحالي أثناء كتابتها ؛
ومع ذلك ، يتم التعامل مع بعض الأحرف بشكل خاص. على وجه الخصوص ، الشخصيات التالية هي
مأخوذة من التيار الكتابة البعيدة(4) الإعدادات (انظر stty(1)) ولها معناها المعتاد (القيم العادية
بين قوسين): kill (^ U) ، و erase (^؟) ، و werase (^ W) ، و eof (^ D) ، و intr (^ C) ، و quit (^ \).
بالإضافة إلى ما سبق ، يتم أيضًا التعامل مع الأحرف التالية بشكل خاص في الإدخال
الوضع:

^ E الأمر وتعداد اسم الملف (انظر أدناه).

^ F الأمر وإكمال اسم الملف (انظر أدناه). إذا تم استخدامه مرتين على التوالي ، فستظهر قائمة
يتم عرض الإكمالات المحتملة ؛ إذا تم استخدامه للمرة الثالثة ، يتم التراجع عن الإكمال.

^ H يمحو الحرف السابق.

^ ي | ^ م نهاية السطر. تتم قراءة السطر الحالي وتحليله وتنفيذه بواسطة shell.

^ V Literal بعد ذلك. لا يتم التعامل مع الحرف التالي المكتوب بشكل خاص (يمكن استخدامه ل
أدخل الأحرف الموضحة هنا).

^ X الأمر وتوسيع اسم الملف (انظر أدناه).

يضع المحرر في وضع الأوامر (انظر أدناه).

اسم الملف الاختياري وإكمال الأمر (انظر ^F أعلاه) ، مع تمكين طقم -o
سادسا التبويب.

في وضع الأوامر ، يتم تفسير كل حرف على أنه أمر. الشخصيات التي لا تفعل ذلك
تتوافق مع الأوامر ، وهي مجموعات غير قانونية من الأوامر ، أو أوامر لا يمكن أن تكون كذلك
نفذت جميعها تسبب أصوات تنبيه. في أوصاف الأوامر التالية ، [n] يشير إلى
قد يكون الأمر مسبوقًا برقم (على سبيل المثال 10l يتحرك لليمين 10 أحرف) ؛ إذا لم يكن هناك رقم
البادئة مستخدمة ، n يفترض أن تكون 1 ما لم ينص على خلاف ذلك. مصطلح "الحالي
الموضع "يشير إلى الموضع بين المؤشر والحرف الذي يسبق المؤشر.
"الكلمة" هي سلسلة من الأحرف والأرقام والأحرف السفلية أو سلسلة من غير
أحرف ، وغير رقمية ، وبدون شرطة سفلية ، وغير مسافات بيضاء (على سبيل المثال ، يحتوي "ab2 * & ^" على اثنين
الكلمات) و "الكلمة الكبيرة" هي سلسلة من الأحرف بدون مسافات.

ملصقات خاصة مكش أوامر vi:

الأوامر التالية ليست في محرر ملف vi العادي أو تختلف عنه:

[n] _ أدخل مسافة متبوعة بعلامة nالكلمة الكبيرة من آخر أمر في التاريخ
في الموضع الحالي وأدخل وضع الإدراج ؛ لو n لم يتم تحديد آخر
تم إدراج الكلمة.

# أدخل حرف التعليق ("#") في بداية السطر الحالي والعودة
الخط إلى الغلاف (ما يعادل أنا # ^ J).

[n] ز مثل G، إلا إذا n لم يتم تحديده ، فهو يذهب إلى أحدث ما تم تذكره
الخط.

[n] v تحرير الخط n يستخدم ال vi(1) محرر ؛ لو n لم يتم تحديد السطر الحالي
تم تحريره. الأمر الفعلي الذي تم تنفيذه هو fc -e $ {VISUAL: - $ {محرر: -vi}} n.

* و ^ X يتم تطبيق الأمر أو توسيع اسم الملف على الكلمة الكبيرة الحالية (مع امتداد
يتم إلحاق "*" إذا كانت الكلمة لا تحتوي على أحرف متلألئة للملف) - الكلمة الكبيرة هي
استبدلت بالكلمات الناتجة. إذا كانت الكلمة الكبيرة الحالية هي الأولى في
سطر أو يتبع أحد الأحرف "؛" ، "|" ، "&" ، "(" ، أو ")" ، ولا
تحتوي على شرطة مائلة ('/') ، ثم يتم توسيع الأمر ؛ خلاف ذلك اسم الملف
تم التوسع. توسيع القيادة سيطابق الكلمة الكبيرة ضد الجميع
الأسماء المستعارة والوظائف والأوامر المضمنة بالإضافة إلى أي ملفات قابلة للتنفيذ تم العثور عليها
من خلال البحث في الدلائل في المعلمة PATH. يطابق توسيع اسم الملف
الكلمة الكبيرة مقابل الملفات الموجودة في الدليل الحالي. بعد التوسيع ،
يتم وضع المؤشر بعد الكلمة الأخيرة والمحرر في وضع الإدراج.

[n] \ ، [n] ^ ف ، [n] ، و [n]
الأمر / إكمال اسم الملف. استبدل الكلمة الكبيرة الحالية بالأطول
تم الحصول على تطابق فريد بعد تنفيذ الأمر وتوسيع اسم الملف.
يتم التعرف عليه فقط إذا كان سادسا التبويب تم تعيين الخيار ، بينما فقط
المعترف بها إذا كان سادسا مكتملا تم تعيين الخيار (انظر طقم -o). إذا n محدد،
ال nتم تحديد الإكمال المحتمل (كما ورد في الأمر / اسم الملف
أمر التعداد).

= و ^ E الأمر / تعداد اسم الملف. ضع قائمة بجميع الأوامر أو الملفات التي تتطابق مع ملف
الكلمة الكبيرة الحالية.

^ V عرض إصدار مكش. تتم استعادة المخزن المؤقت للتحرير الحالي بمجرد ملف
يتم الضغط على المفتاح. يتم تجاهل استعادة ضغط المفاتيح.

@c توسيع الماكرو. نفذ الأوامر الموجودة في الاسم المستعار c.

أوامر الحركة داخل الخط:

[n]يُسلِّم [n] ^ ح
تحرك يسارا n حرفا.

[n]أرض [n]
تحرك يمينا n حرفا.

0 الانتقال إلى العمود 0.

^ الانتقال إلى أول حرف غير مسافة بيضاء.

[n] | الانتقال إلى العمود n.

- تحرك إلى آخر حرف.

[n] ب العودة n الكلمات.

[n] ب العودة n كلمات عظيمة.

[n] e المضي قدما إلى نهاية الكلمة ، n .

[n] هاء المضي قدما إلى نهاية الكلمة الكبيرة ، n .

[n] w المضي قدما n الكلمات.

[n] W المضي قدما n كلمات عظيمة.

٪ العثور على الشريك. يتطلع المحرر إلى أقرب قوس أو قوس أو قوس
ثم نقل المؤشر إلى الأقواس أو القوسين أو القوسين المطابقين.

[n]fc المضي قدما إلى nتواجد الحرف c.

[n]Fc تحرك للخلف إلى nتواجد الحرف c.

[n]tc تقدم للأمام إلى ما قبل nتواجد الحرف c.

[n]Tc تحرك للخلف إلى ما قبل nتواجد الحرف c.

[n] ؛ يكرر الماضي f, F, tالطرق أو T أمر.

[n] ، يكرر الماضي f, F, tالطرق أو T الأمر ، لكنه يتحرك في الاتجاه المعاكس.

أوامر الحركة بين الخطوط:

[n] ي ، [n] + و [n] ^ ن
الانتقال الى nالسطر التالي في التاريخ.

[n]ك، [n]-، و [n] ^ ص
الانتقال الى nالسطر السابق في التاريخ.

[n] G الانتقال إلى السطر n في التاريخ؛ لو n غير محدد ، رقم الأول
يستخدم الخط تذكر.

[n] ز مثل G، إلا إذا n لم يتم تحديده ، فهو ينتقل إلى أحدث سطر تم تذكره.

[n]/سلسلة
ابحث للخلف عبر التاريخ عن ملف nيحتوي الخط ال سلسلة؛ إذا سلسلة
يبدأ بـ "^" ، يجب أن يظهر الجزء المتبقي من السلسلة في بداية السجل
خط لها لتتناسب.

[n]?سلسلة
مثل /، إلا أنه يبحث عبر التاريخ.

[n] n ابحث عن nتواجد آخر سلسلة بحث ؛ اتجاه البحث
هو نفس البحث الأخير.

[n] N ابحث عن ملف nتواجد آخر سلسلة بحث ؛ اتجاه البحث
هو عكس البحث الأخير.

ANSI-CurUp, PC-PgUp
خذ الأحرف من بداية السطر إلى موضع المؤشر الحالي كـ
البحث عن سلسلة والبحث في التاريخ للخلف عن الأسطر التي تبدأ بهذا
خيط؛ احتفظ بوضع المؤشر. هذا يعمل فقط في وضع الإدراج ويحافظ عليه
تمكين.

تحرير الأوامر

[n] أ إلحاق نص n مرات. ينتقل إلى وضع الإدراج بعد الوضع الحالي مباشرة. ال
يتم تكرار الإلحاق فقط إذا تم إعادة إدخال وضع الأمر ، أي يستخدم.

[n] نفس a، باستثناء أنه يلحق في نهاية السطر.

[n] i أدخل النص n مرات. ينتقل إلى وضع الإدراج في الموضع الحالي. الإدخال
يتم تكرارها فقط إذا تم إعادة إدخال وضع الأمر أي يستخدم.

[n] أنا نفس الشيء i، باستثناء أن الإدخال يتم قبل الحرف الأول غير الفارغ.

[n] s استبدل التالي n الأحرف (على سبيل المثال ، احذف الأحرف وانتقل إلى الإدخال
الوضع).

S استبدل السطر الكامل. جميع الأحرف من أول حرف غير فارغ حتى النهاية
يتم حذف الخط ويتم إدخال وضع الإدراج.

[n]cنقل كمد
التغيير من الوضع الحالي إلى الموضع الناتج من n نقل كمدق (أي
احذف المنطقة المشار إليها وانتقل إلى وضع الإدراج) ؛ لو نقل كمد is c، خط
بدءًا من أول حرف غير فارغ.

C التغيير من الوضع الحالي إلى نهاية السطر (أي حذف إلى نهاية
الخط وانتقل إلى وضع الإدراج).

[n] x احذف التالي n حرفا.

[n] X حذف السابق n حرفا.

D احذف حتى نهاية السطر.

[n]dنقل كمد
احذف من الموضع الحالي إلى الموضع الناتج منه n نقل كمدs;
نقل كمد هو أمر حركة (انظر أعلاه) أو d، في هذه الحالة يكون الخط الحالي
حذفه.

[n]rc استبدل التالي n الشخصيات ذات الطابع c.

[n] R استبدال. أدخل وضع الإدراج ولكن الكتابة فوق الأحرف الموجودة بدلاً من الإدراج
قبل الشخصيات الموجودة. يتكرر الاستبدال n .

[n] ~ تغيير حالة التالي n حرفا.

[n]yنقل كمد
ينتقل من الوضع الحالي إلى الموضع الناتج من n نقل كمدق في
نثر العازلة لو نقل كمد is y، يتم انتزاع الخط بأكمله.

Y سحب من الوضع الحالي إلى نهاية السطر.

[n] p لصق محتويات المخزن المؤقت للنزع مباشرة بعد الموضع الحالي ، n .

[n] P نفس p، باستثناء لصق المخزن المؤقت في الموضع الحالي.

أوامر vi المتنوعة

^ J و ^ M
تتم قراءة السطر الحالي وتحليله وتنفيذه بواسطة shell.

^ L و ^ R
أعد رسم الخط الحالي.

[n]. أعد إجراء آخر أمر تحرير n .

u التراجع عن أمر التحرير الأخير.

U التراجع عن جميع التغييرات التي تم إجراؤها على السطر الحالي.

مفاتيح PC Home و End و Del و المؤشر
أنها تتحرك كما هو متوقع ، سواء في وضع الإدراج والأوامر.

INTR و استقال
يتسبب حرف المقاطعة والإنهاء في حذف السطر الحالي و
موجه جديد ليتم طباعتها.

استخدم mksh عبر الإنترنت باستخدام خدمات onworks.net


خوادم ومحطات عمل مجانية

قم بتنزيل تطبيقات Windows و Linux

  • 1
    البديل-F
    البديل-F
    يوفر Alt-F مصدرًا مجانيًا ومفتوحًا
    البرامج الثابتة البديلة لـ DLINK
    DNS-320/320L/321/323/325/327L and
    DNR-322L. Alt-F لديه Samba و NFS ؛
    يدعم ext2 / 3/4 ...
    تنزيل Alt-F
  • 2
    usm
    usm
    Usm عبارة عن حزمة برامج موحدة
    مدير يتعامل بشكل تلقائي
    قرار التبعية. إنها توحد
    مستودعات الحزم المختلفة بما في ذلك
    سلاكوير ، سلاكي ، ف ...
    تنزيل usm
  • 3
    Chart.js
    Chart.js
    Chart.js هي مكتبة جافا سكريبت
    يسمح للمصممين والمطورين بالرسم
    جميع أنواع المخططات باستخدام HTML5
    عنصر قماش. يقدم مخطط شبيبة ملف
    مجموعة مصفوفة ...
    تنزيل Chart.js
  • 4
    iReport-Designer لـ JasperReports
    iReport-Designer لـ JasperReports
    ملاحظة: iReport / Jaspersoft Studio Support
    إعلان: اعتبارًا من الإصدار 5.5.0 ،
    سيكون Jaspersoft Studio هو المسؤول
    عميل التصميم لـ JasperReports. iReport
    إرادة...
    قم بتنزيل iReport-Designer لـ JasperReports
  • 5
    PostInstallerF
    PostInstallerF
    سيقوم PostInstallerF بتثبيت كافة ملفات
    البرمجيات التي فيدورا لينكس وغيرها
    لا يتضمن بشكل افتراضي ، بعد
    تشغيل فيدورا لأول مرة. انها
    من السهل ...
    تنزيل PostInstallerF
  • 6
    عنيد
    عنيد
    تم نقل مشروع الدعامة إلى
    https://strace.io. strace is a
    التشخيص والتصحيح والتعليمي
    userpace tracer لنظام التشغيل Linux. يتم استخدامها
    لرصد ...
    تحميل strace
  • أكثر "

أوامر لينكس

Ad