1-4
9.1. Standart chiqishni yo‘naltirish (Redirecting standard output)
Linuxda har bir buyruq bajarilganda, natija standart chiqish oqimiga (STDOUT
) yo‘naltiriladi, ya’ni ekranga chiqariladi. Standart chiqishni boshqarish va uni fayl yoki boshqa manzilga yo‘naltirish orqali natijalarni saqlash yoki tahlil qilish osonlashadi.
Nazariy tushuntirish:
>
– Standart chiqishni berilgan faylga yo‘naltiradi va faylni yangilaydi (eski tarkib o‘chiriladi).>>
– Standart chiqishni berilgan faylga qo‘shimcha tarzda yozadi (eski tarkib saqlanadi).Standart chiqish natijalarini boshqa manzilga yoki faylga yo‘naltirish uchun quvur (
pipe
) yoki fayl yo‘naltirish operatorlaridan foydalaniladi.
Amaliy misollar:
Buyruq natijasini faylga yozish:
Bu buyruq
ls
natijasini ekranga chiqarish o‘rnigaoutput.txt
fayliga yozadi.Natijani faylga qo‘shimcha yozish:
Bu buyruq
output.txt
fayliga yangi qator qo‘shadi, eski ma'lumotlar saqlanadi.Natijani qurilmaga yo‘naltirish:
Bu buyruq natijani yo‘naltirib, chiqarilishini bloklaydi, chunki
/dev/null
maxsus qurilma bo‘lib, natijani "yo‘qotadi".Quvur orqali boshqa buyruqga yo‘naltirish:
Bu buyruq
ls
natijasinigrep
buyrug‘iga uzatib,.txt
kengaytmali fayllarni qidiradi.
9.2. Qo‘shish va faylni o‘chirish (Append vs Truncate)
Linuxda faylga ma'lumot yozish usullari ikkita asosiy turga bo‘linadi:
Truncate – Faylning mavjud tarkibi o‘chiriladi va yangi ma'lumot yoziladi.
Append – Faylning mavjud tarkibi saqlanadi va yangi ma'lumot qo‘shimcha tarzda yoziladi.
Nazariy tushuntirish:
>
– Faylni truncate qiladi (eski tarkibni o‘chiradi).>>
– Faylga append qiladi (eski tarkib saqlanadi).
Amaliy misollar:
Truncate usuli:
Bu buyruq
data.txt
faylining barcha eski tarkibini o‘chiradi va yangi matnni yozadi.Append usuli:
Bu buyruq
data.txt
fayliga qo‘shimcha ma'lumot qo‘shadi, eski tarkib saqlanadi.Jarayon natijasini faylga yozish:
Bu buyruq
ps aux
natijasiniprocesses.log
fayliga qo‘shadi.
Qo‘llanilish holatlari:
Append – Log fayllarini boshqarishda.
Truncate – Ma'lumotlarni yangilab saqlashda.
9.3. Standart chiqish va xatolarni birgalikda yo‘naltirish (Redirecting both STDOUT and STDERR)
Har bir buyruq natija oqimlari uchta asosiy turga ega:
STDOUT – Standart natija oqimi.
STDERR – Xato xabarlari oqimi.
STDIN – Kiritma oqimi.
Ba'zan STDOUT va STDERR oqimlarini bir joyga yo‘naltirish zarur bo‘ladi. Bu orqali barcha natijalar bitta faylda yoki manzilda saqlanadi.
Nazariy tushuntirish:
2>&1
– STDERR oqimini STDOUT oqimiga yo‘naltiradi.&>
– Birgalikda STDOUT va STDERR oqimlarini berilgan manzilga yo‘naltiradi.
Amaliy misollar:
STDOUT va STDERR ni faylga yozish:
Bu buyruqdan keladigan barcha natijalar va xato xabarlari
output.log
fayliga yoziladi.Qisqartirilgan shaklda:
Bu buyruq avvalgisiga teng.
STDERR ni boshqa faylga yo‘naltirish:
Bunda natijalar
output.log
fayliga, xatolar esaerror.log
fayliga yoziladi.
Qo‘llanilish holatlari:
Natijalarni va xatolarni ajratib tahlil qilish.
Loglarni boshqarish va tahlil qilish.
9.4. Nomlangan quvurlarni ishlatish (Using named pipes)
Linuxda jarayonlar o‘rtasida ma'lumot almashish uchun nomlangan quvurlar (named pipes
) dan foydalaniladi. Nomlangan quvurlar vaqtinchalik fayl tizimi orqali ikki yoki undan ortiq jarayon o‘rtasida muloqot qilish imkonini beradi.
Nazariy tushuntirish:
Nomlangan quvurlar maxsus fayllar orqali jarayonlar o‘rtasida bog‘lanadi.
mkfifo
buyrug‘i yordamida nomlangan quvur (sal nito tarjima qildim :) ) yaratish mumkin.
Amaliy misollar:
Nomlangan quvur yaratish:
Bu buyruq
mypipe
nomli quvur yaratadi.Quvur orqali yozish:
Quvur orqali o‘qish: Boshqa terminalda:
Jarayonlar o‘rtasida bog‘lash:
Qo‘llanilish holatlari:
Jarayonlar o‘rtasida ma'lumot uzatish.
Parallel jarayonlarni boshqarish va tahlil qilish.
Xulosa:
Standart chiqishni yo‘naltirish – natijalarni fayl yoki qurilmaga saqlash imkonini beradi.
Append va truncate – ma'lumotlarni yangilash yoki qo‘shish strategiyalarini boshqaradi.
STDOUT va STDERR ni yo‘naltirish – barcha natijalarni markazlashtirish va tahlil qilishda muhim.
Nomlangan quvurlar – jarayonlar o‘rtasida samarali muloqot o‘rnatishga yordam beradi.
Last updated