Linux Sistemlerde Standart Girdi Çıktı ve Hata

                 

                               

        Linux da her komutun 3 tür işaretcisi vardır.

       1-Standar Giriş:Çalışmakta olan programın ek kaynaklar açmadan veri okumak için kullanacağı kaynağı belirtir.

       2-Standart Çıktı:Çalışmakta olan programın cıktılarının gonderileceği kaynağı gosterir.

       3-Standart Hata:Çlaışmakta olan programda cıktıların gonderileceği kaynağı belirtir.

Bu 3 işaretciye atanmıs numaralar vardır.Bunlar Standar Giriş 0, standart çıkış 1,standart hata 2 degerleri ile gosterilir.

  Standart Çıktının Yönledirilmesi

       Normalde linuxde calıstırlan bir komutun işlenmiş olan bilgisi 1 numaralı kanaldan ekranan yazar.Ancak biz bu olayı "1>" işareti ile istegiimiz bir dosyaya yonlendirebiliriz.İşaretin basında 1 olmassa da gönderilir  varsayılan olarak standart cıktıyı kullanır..Eger olusacak çıktının ardından bir standart cıktı daha  eklenmek isteniyorsa ">>" işaretini  kullanmak yeterli olacaktır.Örnek olarak soyle bakabiliriz.
 
  onceliklekle standart çıktıyı dosya1 e yolladık dosya1 adlı dosyamız onceden olmamasına  ragmen  olusturdu.Sonra "1" degeri olmadan cııktıyı yonlendirdik varsayılan olarak sandart   cıktıyı aldıgı icin aynı cıktıyı verdi.Aynı zamanda ">" işareti var olan dosya uzerinde ekleme yapmadan bize cıktı verir.İçerisindeki tum bilgileri silip yeniden dosyayı olusturur.

   Bu çıktıdada var olan dosya 1 uzerıne ">>" işareti ile bu cıktıyı dosayanın icerigini silmeden sonuna ekleme yaparak dosya1 kaydetti.


Standart  Hata 
 
    Normalde bir program calısırken meydana gelen hatalar 2 kanalı üzerinden standar hataya yönlendirilir.Yani bu işlem "2>" işareti ile yapılır.Eğer "2" değeri belirtilmezse standart hata olduğu bilinmez ve onu standart cıktı olarak algılar.

İlk olarak çalıştırılan komut bize hata cıktısı verdi.İkinci olarak "2>" işareti ile bi bu çıktıyı dosya1 adlı  dosyamıza gonderdik sonra onu dosyayı cat komutu ile görüntüledik ve bize standart hatayı verdi.

 Bir Komutun Çıktısını Başka Komuta Yönlendirme

    Linux sistemlerde bir komutun çıktısını başka bir komutun çıktısının başka bir komutun standart girdisi olarak kullanmak için "|" pipe(boru) işareti kullanılır.Kullanımı genel olarak:

        komut1  | komut2

 

öncelikle cat komtu ile dosya içeriğini görüntüledik ardından ikinci komut ile cat komutunun çıktısını ikinci komutun girdisi olarak verdik ve onu ikinci komut işledi ve cıktıyı bize döndürdü.Burada "wc" komutu bir dosyada kac tane satır,kelime ve harf olduğunu bize cıktı olarak verir.Yukarıda ki cıktıda sadece 20 çıktısı vernesinibn sebebi "-l" parametresi  sonucunda bize satır sayısını döndürdü.Genelde pipe işareti wc,grep,sort gibi komutlar ile kullanılır.

Yukaridaki cıktıda once /etc/passwd dizinin cat komutunun çıktısını grep komutuna girdi olarak yolladık grep komutu ile icerisinde "ali" gecen satırları listeledik ardından grep komutunun cıktsını "tee" komutunun girdisi olarak yolaldık ekrana bulunan degerler basıldı.Burada "tee" komutu kendisine gonderilen cıktıyı alır işler once yanında verilen dosya adına kaydeder ve aynı zamanda ekrana basar.Bunu doğrulamak kullanıcılar.txt dosyasına cat komutu ile baktık ve onceki komutun çıktısı ile aynı oldugunu gormus olduk.


Başka bir yazıda görüşmek üzere hosçakalın.
         

Yorumlar

Bu blogdaki popüler yayınlar

İntellij Ide Kurulumu Maven kullanımı

Vlan nedir ? Hp switchlerde Vlan yapısı ve Bazı network terimleri

Ubuntu Server Ldap Kurulumu