صحيح وخطأ (أوامر)

trueوهما أمران برمجيان يُنهيان العملية فورًا برمز خروج 0 أو 1 على التوالي. وبما أن البرنامج النصي يُعيّن رمز خروج العملية إلى قيمة آخر أمر يُنفّذه، فيمكن استخدام هذين الأمرين لتعيين رمز خروج البرنامج النصي. تُفسّر جميع أنظمة يونكس رمز الخروج صفر على أنه نجاح، ورمزًا غير صفري (عادةً) على أنه فشل، لذا يُعيّن الأمران رمز الخروج صفر على أنه نجاح، falseورمز الخروج صفر على أنه فشل. [ ملاحظة 1 ]truefalse

تتوفر هذه الأوامر في أنظمة التشغيل الشبيهة بنظام يونكس .

يستخدم

تُستخدم هذه الأوامر عادةً في العبارات الشرطية وحلقات التكرار في البرامج النصية . على سبيل المثال، يتم تنفيذ البرنامج النصي التالي بشكل متكرر echo helloحتى يتم إيقافه:

بينما صحيح، قم بتكرار "مرحباً" تم

يمكن استخدام هذه الأوامر لتجاهل نجاح أو فشل سلسلة من الأوامر الأخرى، كما في المثال التالي:

اجعل && خطأ

يؤدي ضبط خيار "إيقاف تشغيل واجهة تسجيل دخول المستخدم" في ملف /etc/passwd إلى حرمانه فعليًا من الوصول إلى واجهة سطر الأوامر التفاعلية، ولكن قد يظل حسابه صالحًا لخدمات أخرى، مثل بروتوكول نقل الملفات (FTP ). (مع أن الأمر /sbin/nologin ، إن وُجد، قد يكون أنسب لهذا الغرض، لأنه يُظهر إشعارًا قبل إنهاء الجلسة).

لا تقبل البرامج أي وسيطات سطر الأوامر باستثناء إصدار GNU الذي يقبل --helpالخيارات النموذجية --version.

أمر فارغ

يُستبدل الأمر true أحيانًا بالأمر null المشابه له جدًا، [ 1 ] والذي يُكتب بنقطتين رأسيتين ( :). الأمر null مُدمج في الصدفة ، ولذلك قد يكون أكثر كفاءة إذا كان true برنامجًا خارجيًا ( عادةً ما يكون true دالة مُدمجة في الصدفة). يمكننا إعادة كتابة المثال أعلاه باستخدام null :بدلًا من truenull.

بينما : قم بـ echo hello تم

قد يأخذ الأمر الفارغ (null) معاملات، يتم تجاهلها. كما يُستخدم كأمر وهمي لا يُحدث أي تغيير، وذلك لإحداث تأثيرات جانبية مثل تعيين قيم افتراضية لمتغيرات الصدفة عبر ${parameter:=word}صيغة توسيع المعاملات. [ 2 ] على سبيل المثال، من bashbug ، وهو برنامج نصي للإبلاغ عن الأخطاء في Bash :

: ${ TMPDIR :=/tmp } : ${ EDITOR = $DEFEDITOR } : ${ USER = ${ LOGNAME - ` whoami ` }}

الوجوه الضاحكة الفارغة

يمكن استخدام أي منهما trueكبديل :لـ ، لذلك هناك 3 "رموز تعبيرية فارغة":cat/dev/null

:>- إنشاء ملف أو إفراغه إذا كان موجودًا بالفعل؛
:>>- إنشاء ملف إذا لم يكن موجودًا، على عكس ذلك touch، فهو لا يغير الطابع الزمني للملف الموجود؛
:|- يمكن استخدامه بدلاً من< /dev/null

يشبه هذا الاستخدام الاستخدام القياسي لـ IEFBR14 .

انظر أيضاً

  • IEFBR14 – برنامج "عدم القيام بأي شيء" على أجهزة IBM المركزية 
  • قائمة أوامر POSIX
  • المنطق الثنائي – المنطق الكلاسيكي لقيمتين، إما صحيح أو خطأ. صفحات تعرض أوصافًا مختصرة لأهداف إعادة التوجيه. 

ملحوظات

  1. تختلف هذه القيم عن قيم الصواب في المنطق الكلاسيكي ومعظم لغات البرمجة العامة: الصواب (1 أو T) والخطأ (0 أو ⊥) . لاحظ أن الدالة المدمجةtrueتحدد حالة الخروج، بينما يُعيدها البرنامجtrue، بنفس التأثير.

مراجع

  1. "نقطتان رأسيتان" ، المواصفات الأساسية لمجموعة Open Group، الإصدار 7 ، معيار IEEE 1003.1-2008، مؤرشف من الأصل بتاريخ 27-04-2014 ، تم استرجاعه بتاريخ 04-08-2011
  2. كوبر، مندل (أبريل 2011)، "الأمر الفارغ" ، دليل متقدم لكتابة نصوص باش، 6.3 ، مشروع توثيق لينكس، مؤرشف من الأصل في 3 يونيو 2019 ، تم استرجاعه في 4 أغسطس 2011

صفحات الدليل