العودة إلى الدورة

51. مقدمة إلى إعادة التوجيه: STDIN، STDOUT، STDERR

أساسيات Linux: من الصفر إلى إتقان واجهة سطر الأوامر (CLI Hero)

التحكم في تدفق البيانات

في Linux، يتم توحيد تدفق البيانات بدرجة كبيرة. تحتوي كل عملية (أمر) على ثلاثة تيارات بيانات افتراضية (default data streams):

  1. STDIN (المدخلات القياسية): واصف الملف 0. المدخلات التي يتلقاها الأمر (عادةً لوحة المفاتيح).
  2. STDOUT (المخرجات القياسية): واصف الملف 1. المخرجات العادية التي يولدها الأمر (عادةً الشاشة/الطرفية).
  3. STDERR (الخطأ القياسي): واصف الملف 2. رسائل الخطأ التي يولدها الأمر (عادةً الشاشة/الطرفية).

إعادة التوجيه (Redirection) هي عملية تغيير مكان نشأة أو انتهاء هذه التيارات.

إعادة توجيه المخرجات (>) - الكتابة فوق

ترمز علامة > إلى إعادة توجيه STDOUT إلى ملف، وكتابة المحتويات فوق محتويات الملف إذا كان موجوداً.

bash $ ls -l /etc > file_listing.txt

يتم كتابة إخراج ls بالكامل في file_listing.txt

إعادة توجيه المخرجات (>>) - الإلحاق

ترمز علامة >> إلى إعادة توجيه STDOUT إلى ملف، وإلحاق المخرجات الجديدة بنهاية الملف الحالي.

bash $ date >> file_listing.txt

تتم إضافة التاريخ الحالي إلى نهاية file_listing.txt