قط
ال قط يحتوي البرنامج على العديد من الخيارات الشيقة. يُستخدم العديد منها لتحسين تصوّر محتوى النص. ومن الأمثلة على ذلك -A خيار، يُستخدم لعرض الأحرف غير المطبوعة في النص. في بعض الأحيان، نرغب في معرفة ما إذا كانت أحرف التحكم مُضمنة في نصنا المرئي. أكثر هذه الأحرف شيوعًا هي أحرف الجدولة (على عكس المسافات) وعلامات الإرجاع، والتي غالبًا ما تظهر كأحرف نهاية السطر في ملفات النصوص بنظام MS-DOS. ومن الحالات الشائعة الأخرى احتواء الملف على أسطر نصية بمسافات لاحقة.
دعونا ننشئ ملف اختبار باستخدام قط كمعالج نصوص بدائي. للقيام بذلك، سندخل الأمر قط (مع تحديد ملف لإعادة توجيه الإخراج) واكتب النص الخاص بنا، متبوعًا بـ أدخل لإنهاء السطر بشكل صحيح، إذن السيطرة- د، للإشارة إلى قط وصلنا إلى نهاية الملف. في هذا المثال، نُدخل علامة تبويب في بداية السطر ونترك مسافةً في نهايته:
[me @ linuxbox ~] $ قطة> foo.txt
قفز الثعلب البني السريع فوق الكلب الكسول. [me@linuxbox ~]$
[me @ linuxbox ~] $ قطة> foo.txt
قفز الثعلب البني السريع فوق الكلب الكسول. [me@linuxbox ~]$
بعد ذلك ، سوف نستخدم قط مع الالجائزة -A خيار لعرض النص:
[me @ linuxbox ~] $ قطة -A foo.txt
^قفز الثعلب البني السريع فوق الكلب الكسول. $ [me@linuxbox ~]$
[me @ linuxbox ~] $ قطة -A foo.txt
^قفز الثعلب البني السريع فوق الكلب الكسول. $ [me@linuxbox ~]$
كما يمكننا أن نرى في النتائج، يتم تمثيل حرف التبويب في نصنا بواسطة ^Iهذا ترميز شائع يعني "Control-I"، والذي، كما اتضح، هو نفسه حرف علامة التبويب. نرى أيضًا أن $ يظهر في نهاية السطر الحقيقية، مما يشير إلى أن النص لدينا يحتوي على مسافات زائدة.
نص MS-DOS مقابل نص Unix
أحد الأسباب التي قد تدفعك إلى استخدام قط البحث عن الأحرف غير المطبوعة في النص يعني اكتشاف علامات إعادة السطر المخفية. من أين تأتي علامات إعادة السطر المخفية؟ DOS وWindows! لا يُعرّف يونكس وDOS نهاية السطر بنفس الطريقة في الملفات النصية. يُنهي يونكس السطر بحرف تغذية السطر (ASCII 10)، بينما يستخدم MS-DOS ومشتقاته تسلسل علامة إعادة السطر (ASCII 13) وعلامة تغذية السطر لإنهاء كل سطر من النص.
هناك عدة طرق لتحويل الملفات من نظام DOS إلى نظام يونكس. على العديد من أنظمة لينكس، توجد برامج تُسمى dos2unix و unix2dos، والذي يمكنه تحويل ملفات النصوص من وإلى تنسيق DOS. ومع ذلك، إذا لم يكن لديك دوس تو يو- نيكس على نظامك، لا تقلق. عملية تحويل النص من نظام DOS إلى نظام يونكس بسيطة للغاية؛ فهي ببساطة تتضمن إزالة علامات الإرجاع غير المرغوب فيها. ويمكن إنجاز ذلك بسهولة باستخدام بعض البرامج التي سنناقشها لاحقًا في هذا الفصل.
يحتوي cat أيضًا على خيارات تُستخدم لتعديل النص. أبرز خيارين هما -n، الذي يُرقّم الأسطر، و-s، الذي يُلغي إخراج أسطر فارغة متعددة. يمكننا توضيح ذلك على النحو التالي:
[me @ linuxbox ~] $ قطة> foo.txt
الثعلب البني السريع
[me @ linuxbox ~] $ قطة> foo.txt
الثعلب البني السريع
قفز فوق الكلب الكسول.
[me @ linuxbox ~] $ القط -ns foo.txt
قفز فوق الكلب الكسول.
[me @ linuxbox ~] $ القط -ns foo.txt
1
2
3
1
2
3
[me @ linuxbox ~] $
[me @ linuxbox ~] $
الثعلب البني السريع
الثعلب البني السريع
قفز فوق الكلب الكسول.
قفز فوق الكلب الكسول.
في هذا المثال، نقوم بإنشاء إصدار جديد من foo.txt ملف اختبار، يحتوي على سطرين من النص، يفصل بينهما سطران فارغان. بعد المعالجة بواسطة قط مع الالجائزة -ns الخيارات، يُحذف السطر الفارغ الإضافي وتُرقّم الأسطر المتبقية. مع أن هذه العملية ليست معقدة على النص، إلا أنها عملية.