هذا المقال هو جزء من سلسلة نصائح وحيل Linux، في هذا المقال سنغطي بعض الاستخدامات الأساسية لأمر cat (الأمر الأكثر استخدامًا في Linux) و tac (عكس أمر cat – طباعة الملفات بترتيب عكسي) مع بعض الأمثلة العملية.
اقرأ أيضًا: 13 مثالا مفيدا لأمر ‘cat’ في Linux
الاستخدام الأساسي لأمر Cat في Linux
أمر Cat، وهو اختصار لـ Concatenate، هو واحد من الأوامر الأكثر استخدامًا في أنظمة *nix. أساس استخدام الأمر هو قراءة الملفات وعرضها على stdout، مما يعني عرض محتوى الملفات على الطرفية الخاصة بك.
# cat file.txt

استخدام آخر لأمر cat هو قراءة أو دمج ملفات متعددة معًا وإرسال الناتج إلى الشاشة كما هو موضح في الأمثلة أدناه.
# cat file1.txt file2.txt file3.txt

يمكن أيضًا استخدام الأمر لدمج (الانضمام) ملفات متعددة في ملف واحد باستخدام مشغل إعادة التوجيه “>”
في Linux.
# cat file1.txt file2.txt file3.txt > file-all.txt

من خلال استخدام مشغل الإلحاق يمكنك إضافة محتوى ملف جديد إلى أسفل file-all.txt
بالصيغة التالية.
# cat file4.txt >> file-all.txt

يمكن استخدام أمر cat لنسخ محتوى الملف إلى ملف جديد. يمكن إعطاء الملف الجديد اسمًا تعسفيًا. على سبيل المثال، نسخ الملف من الموقع الحالي إلى /tmp/
الدليل.
# cat file1.txt > /tmp/file1.txt

انسخ الملف من الموقع الحالي إلى دليل /tmp/
وغير اسمه.
# cat file1.txt > /tmp/newfile.cfg

A less usage of the cat command is to create a new file with the below syntax. When finished editing the file hit CTRL+D
to save and exit the new file.
# cat > new_file.txt

لترقيم جميع أسطر الإخراج لملف، بما في ذلك الأسطر الفارغة، استخدم التبديل -n
.
# cat -n file-all.txt

لعرض فقط رقم كل سطر غير فارغ استخدم التبديل -b
.
# cat -b file-all.txt

ترغب في معرفة المزيد عن أمر الـ cat في لينكس؟ اقرأ مقالتنا حول 13 أمثلة مفيدة لأمر ‘cat’ في لينكس.
تعلم كيفية استخدام أمر Tac في لينكس
من ناحية أخرى، أمر غير معروف وأقل استخدامًا في أنظمة يونكس هو أمر tac
. Tac هو عمليا النسخة العكسية لأمر cat
(يكتب أيضا بالاتجاه المعاكس) الذي يطبع كل سطر من ملف تبدأ من السطر السفلي وتنتهي عند السطر العلوي إلى إخراج الجهاز القياسي الخاص بك.
# tac file-all.txt

واحدة من أهم الخيارات للأمر تمثله التبديل -s
، الذي يفصل محتويات الملف بناءً على سلسلة أو كلمة مفتاحية من الملف.
# tac file-all.txt --separator "two"

بعد ذلك، أهم استخدام لأمر tac هو أنه يمكن أن يوفر مساعدة كبيرة في تصحيح ملفات السجل، عكس ترتيب السجلات الزمنية لمحتويات السجل.
$ tac /var/log/auth.log Or to display the last lines $ tail /var/log/auth.log | tac
الناتج عينة
tecmint@tecmint ~ $ tac /var/log/auth.log pr 6 16:09:01 tecmint CRON[17714]: pam_unix(cron:session): session closed for user root Apr 6 16:09:01 tecmint CRON[17714]: pam_unix(cron:session): session opened for user root by (uid=0) Apr 6 16:05:01 tecmint CRON[17582]: pam_unix(cron:session): session closed for user root Apr 6 16:05:01 tecmint CRON[17583]: pam_unix(cron:session): session closed for user root Apr 6 16:05:01 tecmint CRON[17583]: pam_unix(cron:session): session opened for user root by (uid=0) Apr 6 16:05:01 tecmint CRON[17582]: pam_unix(cron:session): session opened for user root by (uid=0) Apr 6 16:00:01 tecmint CRON[17434]: pam_unix(cron:session): session closed for user root ....
tecmint@tecmint ~ $ tail /var/log/auth.log | tac Apr 6 16:09:01 tecmint CRON[17714]: pam_unix(cron:session): session closed for user root Apr 6 16:09:01 tecmint CRON[17714]: pam_unix(cron:session): session opened for user root by (uid=0) Apr 6 16:05:01 tecmint CRON[17582]: pam_unix(cron:session): session closed for user root Apr 6 16:05:01 tecmint CRON[17583]: pam_unix(cron:session): session closed for user root Apr 6 16:05:01 tecmint CRON[17583]: pam_unix(cron:session): session opened for user root by (uid=0) Apr 6 16:05:01 tecmint CRON[17582]: pam_unix(cron:session): session opened for user root by (uid=0) Apr 6 16:00:01 tecmint CRON[17434]: pam_unix(cron:session): session closed for user root Apr 6 16:00:01 tecmint CRON[17434]: pam_unix(cron:session): session opened for user root by (uid=0) Apr 6 15:55:02 tecmint CRON[17194]: pam_unix(cron:session): session closed for user root Apr 6 15:55:01 tecmint CRON[17195]: pam_unix(cron:session): session closed for user root ...
مثل أمر cat
، يقوم أمر tac
بعمل ممتاز في تلاعب الملفات النصية، ولكن يجب تجنب استخدامه في أنواع أخرى من الملفات، خاصة الملفات الثنائية أو الملفات التي تحدد السطر الأول البرنامج الذي سيقوم بتشغيله.
Source:
https://www.tecmint.com/learn-linux-cat-command-and-tac-command/