نظرة عامة
يُعد أمر cat الأداة الأساسية الأكثر استخداماً في بيئة لينكس لعرض محتويات الملفات النصية ودمجها بسرعة. بعيداً عن مجرد استعراض الملفات البسيط، سنتعرف مباشرة في بيئة تدريبية على Ubuntu على الخيارات الأساسية التي ترفع كفاءة العمل العملي إلى أقصى حد، مثل ترقيم الأسطر، وضغط الأسطر الفارغة، وإظهار المحارف الخاصة بصرياً. قارن بين الفروق في أداء كل خيار والنتائج الفعلية على مخرجات الطرفية للارتقاء بإنتاجيتك عبر الطرفية إلى مستوى جديد.
1. إنشاء ملف نصي تجريبي للاختبار والعرض الأساسي
للتدرب على الخيارات المتنوعة لأمر cat، نقوم بإنشاء ملف باسم sample.txt يحتوي على أسطر فارغة متتالية، ومحارف جدولة (Tab)، ومسافات زائدة في نهاية الأسطر (trailing space).
![printf ‘First line\n\n\nSecond line with tab:\t[TAB]\nThird line with trailing space \n’ > sample.txt](/ubuntu/20261008_012749_4/captures/s01_c01_printf__First_line_n_n_nSecond_line_with_tab__t_TA.png)
يقوم أمر cat بطباعة محتويات الملف المحدد على شاشة الطرفية كما هي تماماً.
عند تنفيذه بدون أي خيارات، فإنه يعرض النص الأصلي للملف بحالته الأولية.
⚙️ [الخيارات الرئيسية]
-n : يطبع أرقام الأسطر في بداية كل سطر، بما في ذلك الأسطر الفارغة.-b : يطبع أرقام الأسطر للأسطر غير الفارغة فقط.-s : يضغط الأسطر الفارغة المتتالية (سطران أو أكثر) ويعرضها كسطر فارغ واحد فقط.-E : يعرض الرمز $ في نهاية كل سطر للدلالة على محرف السطر الجديد (Line feed).-T : يعرض الرمز ^I في مواضع محارف الجدولة (Tab) لتمييزها بصرياً.

2. مقارنة خيارات ترقيم الأسطر (-n مقابل -b)
يقوم الأمر cat -n sample.txt بترقيم جميع أسطر الملف وعرضها.
يُعد هذا الخيار مفيداً للتحقق من التدفق الكامل ومواقع الأسطر في الملف، شاملاً الأسطر الفارغة التي لا تحتوي على نصوص (السطران 2 و 3).

يقوم الأمر cat -b sample.txt بترقيم الأسطر غير الفارغة فقط وعرضها.
يتم تخطي الأسطر الخالية من المحتوى وعدم تضمينها في الترقيم، مما يجعله ملائماً لمعرفة عدد أسطر البيانات الفعلية والصالحة فقط.

3. ضغط الأسطر الفارغة المتتالية في سطر واحد لتحسين وضوح القراءة (-s)
يقوم الأمر cat -s sample.txt بضغط الأسطر الفارغة المتتالية وعرضها كسطر فارغ واحد فقط.
يساعد ذلك في تقليل الفراغات الطويلة غير الضرورية وتحسين قابلية قراءة النص بالكامل.

يقوم الأمر cat -ns sample.txt بضغط الأسطر الفارغة المتتالية مع ترقيم جميع الأسطر في الوقت نفسه.
يُعد هذا فعالاً لرؤية العدد الإجمالي للأسطر بعد الضغط والتعرف على مواقع النصوص بنظرة واحدة.

4. إظهار المحارف الخاصة المخفية ومحارف السطر الجديد والجدولة بصرياً (-E, -T, -A)
يعرض الأمر cat -E sample.txt الرمز $ في نهاية كل سطر (موضع السطر الجديد).
يُعد مفيداً للتحقق بشكل مباشر وبديهي مما إذا كانت هناك مسافات غير مرئية في نهاية الجمل (Trailing Space) أو فواصل أسطر غير ضرورية.

يقوم الأمر cat -T sample.txt باستبدال محارف الجدولة (Tab) بالرمز ^I وعرضها على الشاشة.
يتيح لك هذا التمييز بوضوح بين المسافات العادية (Space) ومحارف الجدولة (Tab)، وهو فعال لفحص أخطاء الإزاحة والمسافات البادئة في الشيفرات البرمجية أو ملفات الإعدادات.

يقوم الأمر cat -A sample.txt بإظهار جميع محارف التحكم الخاصة المخفية وفواصل الأسطر ومحارف الجدولة بصرياً.
يعمل هذا الخيار بشكل مطابق للجمع بين الخيارات -vET، حيث يوضح محارف الجدولة (^I) ومحارف السطر الجديد ($) معاً، مما يجعله مثالياً لفحص ومعالجة الأخطاء الناجمة عن المسافات غير المرئية دفعة واحدة.

5. دمج ملفات متعددة واستخدام تقنية EOF لإنشاء الملفات
للتدرب على دمج الملفات، نقوم بإنشاء ملف باسم header.txt يحتوي على ترويسة بسيطة.

يقوم الأمر cat header.txt sample.txt > merged.txt بدمج محتويات الملفين header.txt و sample.txt بالترتيب وحفظهما في ملف جديد باسم merged.txt.
يُعد هذا الخيار فعالاً عند دمج عدة ملفات نصية في ملف واحد أو إضافة ترويسة في بداية المستند.

يستخدم الأمر cat << 'EOF' > append_test.txt بنية Here Document لإنشاء الملف append_test.txt وكتابة أسطر متعددة بداخله حتى يتم إدخال الكلمة الدلالية EOF.
يفيد ذلك في كتابة نصوص متعددة الأسطر وحفظها في ملف بسرعة من بيئة الصدفة (Shell) مباشرة دون الحاجة لفتح محرر نصوص.

يقوم الأمر cat merged.txt append_test.txt بربط محتويات الملفين اللذين تم إنشاؤهما سابقاً merged.txt و append_test.txt بالتتابع وعرضهما على شاشة الطرفية.
يتيح لك ذلك التحقق بنظرة سريعة مما إذا كان تسلسل وتدفق البيانات المدمجة بالكامل قد تم ترتيبه بشكل صحيح.

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