اذا كنت مستخدم لنظام لينكس ممكن سبق لك استخدام dev/null/ في نهايه بعض الاومر.
اذا لم يسبق لك استخدامها او تستخدمها ولاتعرف فائدتها تابع معي هذه التدوينه القصيره 🙂

في انظمه لينكس يوجد مايسمي Virtual Device وهي اجهزه وهميه تتعامل مع النظام
احدها  هو  dev/null/ او مايسمى بالثقب الاسود, وظيفه هذا الملف هو استقبال المخرجات مهما كان حجمها واعطاء البرنامج اشاره ان الكتابه تمت بنجاح.

طريقه استخدام هذا الجهاز الافتراضي بسيطه جداً
لنفرض انك ترغب بالبحث عن ملف باستخدام find
find / -perm -u=s -type f
بهذه الطريقه راح تختلط معنا النتائج مع رسائل الخطأ
لكن لو استخدمنا هذه الطريقه
find / -perm -u=s -type f 2>/dev/null
راح تختفي رسائل الخطأ لاحظ الفرق بين المخرجات بالاسفل

الفرق بين استخدام dev/null وعدم استخدامها
الفرق بين استخدام dev/null وعدم استخدامها

لكن البعض ممكن يتسائل مافائده <2 في الامر السابق
< فائدتها تحويل المخرجات وتخزينها في ملف
لاحظ معي المثال التالي

مثال على استخدام <
مثال على استخدام <

الامر الاول يطبع ر ساله في سطر الاوامر ” مخرجات ”
في الامر الثاني نفذنا نفس الامر لكن مع اضافه < واسم ملف لتخزين المخرجات
في الامر الثالث طبعا ماتم تخزينه في الملف السابق

ولكن مافائده رقم 2 في الامر السابق !!!
كل برنامج على نظام لينكس عند تنفيذه يحتوي على مدخلات ومخرجات ورسائل خطأ

  • 0: stdin : مدخلات
  • 1: stdout : مخرجات
  • 2: stderr : رسائل خطأ
    للمزيد من التفاصيل ( اضغط هنا )

بمعنى لو حبينا ننفذ امر البحث السابق ونعرض فقط رسائل الخطأ ممكن نستخدم هذا الامر
find / -perm -u=s -type f 1>/dev/null

مثال على استخدام <1 stderr
مثال على استخدام <1 stderr

اتمنى ان اكون وفقت في تقديم الفائده لك عزيزي القاريء
اذا عجبتك التدوينه اضغط على ايقونه تويتر بالاسفل وشاركها مع اصدقائك
حسابي في منصه تويتر @buhaimedi