Linux

Linuxda Redirection və Pipes anlayışı

Linuxda Redirection və Pipes Anlayışı

Linux əməliyyat sistemində Redirection (Yönləndirmə)Pipes (Boru Xətləri) anlayışları, terminal ilə istifadə edərkən komandaların giriş və çıxışlarını idarə etməyə imkan verir.

Bu xüsusiyyətlər, komandaların elastikliyini artıraraq çıxışları fayllara yazmaq, səhvləri ayrıca bir fayla yönləndirmək və ya bir komandanın çıxışını başqa bir komandaya giriş olaraq vermək kimi əməliyyatları yerinə yetirməyə imkan yaradır.

Linuxda üç əsas məlumat axını (stream) mövcuddur:

  1. Standard Input (Stdin): Komandaların giriş axını, adətən klaviaturadan gəlir və fayl identifikatoru 0-dır.
  2. Standard Output (Stdout): Komandaların çıxış axını, adətən terminalda göstərilir və fayl identifikatoru 1-dir.
  3. Standard Error (Stderr): Səhv mesajları üçün istifadə olunan çıxış axınıdır və fayl identifikatoru 2-dir.

Yönləndirmə növləri

1. Standard Output yönləndirmə

Komandanın çıxışını ekrana yazdırmaq əvəzinə bir fayla yönləndirə bilərsiniz.

  • Faylı üzərinə yazma:

komanda > fayl

Nümunə:

echo "Salam Dünya" > numune.txt
Bu komanda, “Salam Dünya” ifadəsini numune.txt faylına yazır. Əgər fayl mövcuddursa, üzərinə yazılır.

Fayla əlavə etmə:

komanda >> fayl

Nümunə:

echo "Yenə Salam" >> numune.txt

Bu komanda, numune.txt faylının sonuna “Yenə Salam” ifadəsini əlavə edir.

Standard Input Yönləndirmə

Komandanın girişini klaviaturadan almaq əvəzinə bir fayldan ala bilərsiniz.

komanda < fayl

Nümunə:

wc -l < metin.txt

Bu komanda, metin.txt faylındakı sətirlərin sayını sayar.

3. Standard Error Yönləndirmə

Səhv mesajlarını ekrana yazdırmaq əvəzinə bir fayla yönləndirə bilərsiniz

Stderr-i bir fayla yönləndirmə:

komanda 2> error.log
Nümunə
ls olmayan_fayl 2> error.log
  • Bu komandanın yaradacağı səhv mesajı error.log faylına yazılır.

4. Stdout və Stderr-i eyni fayla yönləndirmə

Həm standart çıxışı (stdout), həm də səhv çıxışını (stderr) eyni fayla yönləndirə bilərsiniz.

Stdout və Stderr yönləndirmə:

komanda > fayl 2>&1
Nümunə:

ls /var > gosterdi.log 2>&1
  • Bu komanda həm normal çıxışı, həm də səhv mesajlarını gosterdi.log faylına yazır.

5. Pipes (|) İstifadəsi

Pipe simvolu (|), bir komandanın çıxışını başqa bir komandanın girişi kimi istifadə etməyə imkan verir.

komanda1 | komanda2

Nümunə:

ls | grep "txt"

Bu komanda, ls çıxışındakı fayl adlarını filtr edərək yalnız “txt” olanları göstərir.

İstifadə nümunələri

  1. Bir fayldakı sözləri sayıb nəticəni qeyd etmək
     wc -w < fayl.txt > soz_sayi.txt
  • Bu komanda, fayl.txt içərisindəki sözləri sayır və nəticəni soz_sayi.txt faylına yazır.

      Səhv mesajlarını bir fayla əlavə etmək:

    komanda 2>> error_note.log
  • Bu komanda, səhv mesajlarını error_note.log faylının sonuna əlavə edir.

Pipe ilə komandaları zəncirvari istifadə:

cat fayl.txt | sort | uniq > sirali_ve_benzersiz.txt
  1. Bu komanda, fayl.txt məzmununu sıralayır, təkrar edən sətirləri çıxarır və nəticəni sirali_ve_benzersiz.txt faylına yazır.

Yekun olaraq

Linuxda yönləndirmə və pipe istifadəsi, komanda sətrində məlumat axınlarını idarə etməyə imkan verir. Bu xüsusiyyətlərlə fayl əməliyyatlarını asanlaşdıra, səhvləri yönləndirə və komandalar arasında məlumat ötürülməsini avtomatlaşdıra bilərsiniz. Linuxda ustalaşmaq üçün bu alətləri yaxşı öyrənmək və istifadə etmək böyük bir üstünlük yaradır.

Related Articles

Bir cavab yazın

Sizin e-poçt ünvanınız dərc edilməyəcəkdir. Gərəkli sahələr * ilə işarələnmişdir

Back to top button