7-Fayl tarkibini ko‘rish: cat, less, head, tail

Fayl tarkibini ko‘rishning ahamiyati

Unix/Linux operatsion tizimlarida fayl tizimi foydalanuvchilar va tizim boshqaruvchilari uchun muhim resurs hisoblanadi. Fayllar ma’lumotlarning asosiy saqlovchisi bo‘lib, ularning tarkibini ko‘rish tizim bilan ishlashda eng muhim vazifalardan biridir. Matnli fayllarni ko‘rish, tahlil qilish va boshqarish uchun maxsus buyruqlar ishlab chiqilgan bo‘lib, ulardan eng ko‘p ishlatiladiganlari cat, less, head va tail buyruqlaridir. Ushbu buyruqlar har biri o‘ziga xos maqsadga xizmat qiladi: fayl tarkibini to‘liq yoki qisman ko‘rsatish, katta fayllarni sahifalab o‘qish yoki faylning boshlang‘ich yoki oxirgi qismlarini ko‘rish. Har bir buyruqning o‘ziga xos xususiyatlari, afzalliklari va cheklovlari mavjud bo‘lib, ularni to‘g‘ri ishlatish foydalanuvchining samaradorligini oshiradi.

cat buyrug‘i - Fayl tarkibini to‘liq ko‘rsatish

cat buyrug‘i Unix/Linux tizimlarida fayl tarkibini ko‘rishning eng oddiy va keng tarqalgan usullaridan biridir. Bu so‘z “concatenate” (birlashtirish) so‘zidan kelib chiqqan bo‘lib, dastlab bir nechta fayllarni birlashtirib, ularning tarkibini chiqarish uchun ishlab chiqilgan. Ammo bugungi kunda cat ko‘proq bitta yoki bir nechta faylning to‘liq tarkibini terminalda ko‘rsatish uchun ishlatiladi. Bu buyruq matnli fayllar bilan ishlashda juda qulay bo‘lsa-da, uning soddaligi katta fayllar yoki murakkab tahlil uchun ba’zi cheklovlarga ega.

cat buyrug‘ining asosiy sintaksisi quyidagicha ko‘rinishga ega

cat [opsiyalar] fayl_nomi

Bu yerda “fayl_nomi” ko‘rishni xohlagan faylning yo‘li bo‘lib, opsiyalar buyruqning xatti-harakatlarini o‘zgartirish uchun ishlatiladi. Masalan, faylning tarkibini ko‘rish uchun oddiygina quyidagi buyruq ishlatiladi:

cat example.txt

Bu buyruq “example.txt” faylining butun tarkibini terminalda chiqaradi. Agar fayl katta bo‘lsa, tarkib terminal oynasidan tashqariga o‘tib ketishi mumkin, bu esa foydalanuvchi uchun noqulay bo‘lishi mumkin.

cat buyrug‘i bir nechta fayllarni birlashtirib ko‘rsatish imkonini ham beradi. Masalan:

cat file1.txt file2.txt

Bu buyruq “file1.txt” va “file2.txt” fayllarining tarkibini ketma-ket chiqaradi. Agar fayllarni yangi faylga birlashtirish kerak bo‘lsa, yo‘naltirish operatori ishlatiladi:

cat file1.txt file2.txt > combined.txt

Bu “combined.txt” nomli yangi fayl yaratadi va unda ikkala faylning tarkibi saqlanadi.

cat buyrug‘ining muhim opsiyalaridan biri “-n” opsiyasidir, bu har bir qatorni raqamlab chiqaradi:

cat -n example.txt

Bu holatda har bir qatorning boshida uning tartib raqami ko‘rsatiladi, bu matnni tahlil qilishda foydali bo‘lishi mumkin. Yana bir muhim opsiya “-b” bo‘lib, u faqat bo‘sh bo‘lmagan qatorlarni raqamlab chiqaradi. Bu kod yoki skript fayllarini ko‘rishda qulaylik yaratadi.

cat buyrug‘ining afzalliklari uning soddaligi va tezkorligida. U kichik va o‘rta hajmdagi fayllarni ko‘rish uchun juda mos keladi. Biroq, katta fayllar bilan ishlashda terminal oynasi to‘lib ketishi mumkin, bu esa ma’lumotni o‘qishni qiyinlashtiradi. Shuningdek, cat interaktiv ko‘rish imkonini bermaydi, ya’ni foydalanuvchi fayl tarkibida sahifalab yoki qatorlab harakatlana olmaydi. Bu cheklovlar boshqa buyruqlar, masalan, less, tomonidan bartaraf qilinadi.

less buyrug‘i - Interaktiv va sahifalab ko‘rish

less buyrug‘i fayl tarkibini sahifalab ko‘rish uchun mo‘ljallangan bo‘lib, katta hajmdagi fayllarni tahlil qilishda juda foydali hisoblanadi. “Less is more” (kamroq ko‘proq) iborasidan kelib chiqqan bu buyruq avvalgi more buyrug‘ining takomillashgan versiyasi sifatida ishlab chiqilgan. less foydalanuvchiga fayl tarkibida oldinga va orqaga harakatlanish, qidirish va boshqa interaktiv funksiyalarni amalga oshirish imkonini beradi.

less buyrug‘ining sintaksisi quyidagicha

less [opsiyalar] fayl_nomi

Masalan, faylni ko‘rish uchun:

less example.txt

Bu buyruq “example.txt” faylining tarkibini terminalda ochadi va foydalanuvchi sahifalab ko‘rishi mumkin. less ichida quyidagi asosiy boshqaruv tugmalari ishlatiladi:

  • Space yoki f: Keyingi sahifaga o‘tish.

  • b: Oldingi sahifaga qaytish.

  • /so‘z: Faylda ma’lum so‘zni qidirish.

  • q: less dan chiqish.

less buyrug‘ining muhim afzalliklaridan biri uning katta fayllar bilan samarali ishlashidir. U faylni butunlay xotiraga yuklamaydi, balki faqat ko‘rinadigan qismini o‘qiydi, bu esa resurslarni tejaydi. Bundan tashqari, less faylni real vaqt rejimida ko‘rish imkonini beradi, ya’ni agar fayl tarkibi o‘zgarsa (masalan, log fayllari), foydalanuvchi yangilanishlarni kuzatishi mumkin. Buning uchun “+F” opsiyasi ishlatiladi:

less +F logfile.log

Bu holatda less faylning oxiriga o‘tadi va yangi qo‘shilgan qatorlarni avtomatik ko‘rsatadi, bu log fayllarini monitoring qilishda foydali.

less buyrug‘ining boshqa muhim opsiyalari orasida “-N” (qator raqamlarini ko‘rsatish) va “-i” (qidirishda katta-kichik harflarni e’tiborsiz qoldirish) mavjud. Masalan:

less -N example.txt

Bu fayl qatorlarini raqamlab ko‘rsatadi.

less buyrug‘ining cheklovlari minimal bo‘lib, u ko‘p hollarda cat ga nisbatan ancha moslashuvchan. Biroq, uning interaktiv tabiati tufayli kichik fayllarni tez ko‘rishda cat qulayroq bo‘lishi mumkin. Shuningdek, less faqat matnli fayllar bilan samarali ishlaydi va ikkilik (binary) fayllarni ko‘rishda noto‘g‘ri natijalar berishi mumkin.

head buyrug‘i - Faylning boshlang‘ich qismini ko‘rsatish

head buyrug‘i faylning boshlang‘ich qismini, odatda dastlabki o‘n qatorni, ko‘rsatish uchun ishlatiladi. Bu buyruq faylning umumiy tuzilishini yoki boshlang‘ich ma’lumotlarini tez ko‘rish kerak bo‘lganda foydali hisoblanadi. Masalan, log fayllari yoki konfiguratsiya fayllarining dastlabki qismini tahlil qilishda head samarali vositadir.

head buyrug‘ining sintaksisi quyidagicha

head [opsiyalar] fayl_nomi

Oddiy misol

head example.txt

Bu “example.txt” faylining dastlabki o‘n qatorini chiqaradi. Agar boshqa miqdordagi qatorlarni ko‘rish kerak bo‘lsa, “-n” opsiyasi ishlatiladi

head -n 5 example.txt

Bu faqat dastlabki besh qatorni ko‘rsatadi.

head bir nechta fayllar bilan ham ishlaydi

head file1.txt file2.txt

Bu har bir faylning dastlabki o‘n qatorini alohida-alohida chiqaradi, fayl nomlari bilan birga.

head buyrug‘ining afzalliklari uning tezkorligi va aniq maqsadga yo‘naltirilganligida. U katta fayllarning faqat boshlang‘ich qismini ko‘rish uchun ideal, bu esa resurslarni tejaydi. Biroq, head faqat faylning boshini ko‘rsatadi va tarkibning boshqa qismlariga kirish imkonini bermaydi. Bu cheklovni tail buyrug‘i to‘ldiradi.

tail buyrug‘i - Faylning oxirgi qismini ko‘rsatish

tail buyrug‘i faylning oxirgi qismini, odatda so‘nggi o‘n qatorni, ko‘rsatish uchun mo‘ljallangan. Bu buyruq ayniqsa log fayllarini monitoring qilishda foydali, chunki log fayllariga odatda eng so‘nggi ma’lumotlar qo‘shiladi. tail real vaqt rejimida fayl o‘zgarishlarini kuzatish imkonini ham beradi.

tail buyrug‘ining sintaksisi quyidagicha:

tail [opsiyalar] fayl_nomi

Oddiy misol

tail example.txt

Bu “example.txt” faylining so‘nggi o‘n qatorini chiqaradi. Muayyan miqdordagi qatorlarni ko‘rish uchun “-n” opsiyasi ishlatiladi

tail -n 5 example.txt

Bu so‘nggi besh qatorni ko‘rsatadi.

tail buyrug‘ining eng muhim xususiyatlaridan biri “-f” (follow) opsiyasidir, bu faylga yangi ma’lumotlar qo‘shilganda ularni real vaqt rejimida ko‘rsatish imkonini beradi:

tail -f logfile.log

Bu log fayllarini kuzatishda, masalan, server xatolarini yoki tizim jurnallarini real vaqt rejimida tahlil qilishda foydali.

tail bir nechta fayllar bilan ham ishlaydi:

tail file1.txt file2.txt

Bu har bir faylning so‘nggi o‘n qatorini alohida ko‘rsatadi.

tail buyrug‘ining afzalliklari uning log fayllarini kuzatishdagi samaradorligi va faylning oxirgi qismini tez ko‘rsatishidadir. Biroq, u faqat faylning oxirgi qismini ko‘rsatadi va boshqa qismlarga kirish imkonini bermaydi. Shuningdek, ikkilik fayllar bilan ishlashda muammolar yuzaga kelishi mumkin.

Buyruqlarning qiyosiy tahlili

cat, less, head va tail buyruqlari har biri fayl tarkibini ko‘rishda o‘ziga xos maqsadlarga xizmat qiladi. cat kichik fayllarni tez ko‘rish va birlashtirish uchun ideal, lekin katta fayllarda noqulay. less katta fayllarni interaktiv ravishda sahifalab ko‘rish uchun eng mos vosita bo‘lib, resurslarni tejaydi. head va tail esa faylning muayyan qismlarini — boshini yoki oxirini — ko‘rish uchun mo‘ljallangan bo‘lib, log fayllari yoki konfiguratsiya fayllarini tezkor tahlil qilishda foydali.

Har bir buyruqning ishlatilishi foydalanuvchining maqsadiga bog‘liq. Masalan, kichik konfiguratsiya faylini ko‘rish uchun cat yetarli bo‘lsa, server loglarini real vaqt rejimida kuzatish uchun tail -f eng yaxshi tanlovdir. Katta fayllarni tahlil qilishda esa less o‘zining moslashuvchanligi bilan ajralib turadi.

Afzalliklar va cheklovlar

Ushbu buyruqlarning umumiy afzalliklari ularning soddaligi, tezkorligi va Unix/Linux tizimlarida universal qo‘llanilishidadir. Ular foydalanuvchiga fayl tarkibini turli usullarda ko‘rish imkonini beradi, bu esa tizim boshqaruvi va ma’lumotlarni tahlil qilishda katta yordam beradi. Biroq, cheklovlar ham mavjud: cat katta fayllarda noqulay, less kichik fayllar uchun ortiqcha, head va tail esa faqat faylning cheklangan qismlarini ko‘rsatadi. Ikkilik fayllar bilan ishlashda barcha buyruqlar muayyan cheklovlarga ega, chunki ular asosan matnli fayllar uchun mo‘ljallangan.

Xulosa

Fayl tarkibini ko‘rish Unix/Linux tizimlarida muhim vazifa bo‘lib, cat, less, head va tail buyruqlari bu jarayonni soddalashtiradi. cat faylni to‘liq va tez ko‘rsatish uchun ishlatilsa, less katta fayllarni interaktiv ravishda tahlil qilishda samarali. head va tail esa faylning boshlang‘ich yoki oxirgi qismlarini ko‘rishga mo‘ljallangan bo‘lib, ayniqsa log fayllarini monitoring qilishda muhim ahamiyatga ega. Ushbu buyruqlarning har biri o‘ziga xos maqsadlarga xizmat qiladi va to‘g‘ri ishlatilganda foydalanuvchining samaradorligini oshiradi. Har bir buyruqning xususiyatlarini tushunish foydalanuvchiga eng mos vositani tanlashda yordam beradi va Unix/Linux tizimlari bilan ishlashni yanada qulaylashtiradi.

cat [opsiyalar] fayl_nomi less [opsiyalar] fayl_nomi head [opsiyalar] fayl_nomi tail [opsiyalar] fayl_nomi

Last updated

Was this helpful?