linux101 - standart gi̇rdi-Çıktı

16
SÜLEYMAN DEMİREL ÜNİVERSİTESİ SİBER GÜVENLİK LABORATUVARI LİNUX 101 KURSU(STANDART GİRDİ ÇIKTI) Mustafa Akocak

Upload: sdu-cyberlab

Post on 21-Mar-2017

175 views

Category:

Education


3 download

TRANSCRIPT

Page 1: Linux101 - Standart Gi̇rdi-Çıktı

SÜLEYMAN DEMİREL ÜNİVERSİTESİSİBER GÜVENLİK LABORATUVARI

LİNUX 101 KURSU(STANDART GİRDİ ÇIKTI)Mustafa Akocak

Page 2: Linux101 - Standart Gi̇rdi-Çıktı

LİNUX SİSTEMLERDE STANDART GİRDİ ÇIKTI

SDÜ-CYBERLAB (LİNUX101)

Linux sistemlerde her komut bir programdır.Bu yuzden her unix programının 3 cesit standart kanalı(işaretçisi) vardır.Bu 3 kanal soyle sınıflandırılır.

1-Standart Girdi Kanalı(standart input yada stdin) 2-Standart Çıktı Kanalı(standart output yada stdout)3-Standart Hata Kanalı.(standart error yada stderr)

Linux sistemlerde programlar(komutlar) soyle calışır

-Girdilerinin standart girdiden yada baska bir girdi kanalından alacak-Çıktılarını standart çıktı kanalından yada tanımlı baska bir çıktı kanalından iletecek-Oluşabilecek hata mesajlarını standart hata kanalına yada tanımlı baska bir kanaldan iletecek sekilde yazılabilir..

Page 3: Linux101 - Standart Gi̇rdi-Çıktı

SDÜ-CYBERLAB (LİNUX101)

Linux sistemlerde programlar girdilerini standart girdi alabileceği gibi, bir kullanıcıdan yada bir dosyadan alabilirler.Standart girdisinden veri alan ,bunları işleyen ve çıktılarını standart çıktıya yönlendiren yazılımlar birer “filtre” olarak da adlandırıllır.Bu filtre yazılımları uygun bir biçimde birbirinin ardına eklendiği zaman karmaşık metin dosylarından istenilen temiz verileri bize geri döndürür.

Page 4: Linux101 - Standart Gi̇rdi-Çıktı

SDÜ-CYBERLAB (LİNUX101)

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:Çalışmakta olan programda cıktıların gonderileceği kaynağı belirtir.

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

Page 5: Linux101 - Standart Gi̇rdi-Çıktı

Standart Çıktının Yönlendirilmesi

SDÜ-CYBERLAB (LİNUX101)

Normalde linux sistemlerde bir program çalıştığı zaman işlenmiş olan veriler 1 numaralı kanaldan ekrana yazar.Ancak programın sonuna “1>” işareti koyduğumuz standart çıktı kanalından gelen verinin ekran ile bağlantısını keserek bir dosyaya yazmamızı saglar tabi “1>” işaretinden sonra dosya adı yada yolunu göstermek gerekir.

“1>” karakteri yerine “>” bu karakteri kullandığımız zamanda aynı işlemi yapar.Yönlendirme işlemlerinden varsayılan olarak sdandart cıktıyı alır.Eğer bu yonlendirme işleminden sonra yazılan dosya bulundugumuz dizin içerisinde var ise o dosyanın içeriğini siler ve bu işlemi çıktısının o dosyaya yazar.Eğer bu verileri kaybetmeden dosyanın sonuna ekleme yapmak istiyorsak “>>” bu işareti kullanmamız yeterli olacaktır.

Page 6: Linux101 - Standart Gi̇rdi-Çıktı

SDÜ-CYBERLAB (LİNUX101)

Page 7: Linux101 - Standart Gi̇rdi-Çıktı

Standart Hata Yönlendirilimesi

SDÜ-CYBERLAB (LİNUX101)

Linux sistemlerde programlar çalışırken meydana gelen aykırı durumlar yada hatalar standart hata kanalından ekrana yazmaktadır.Ancak programın sonunda yonlendirme yapartken “2>” yazılmalıdır.Yazılmadıgı zaman bunu standart cıktıya yonlendirir ve hataları algılayamaz.Standar çıktıda oldugu gibi dosyanın sonuna ekleme yapmak için “>>” karakteri kullanılmalıdır.

Ls -l 1>dosya 2>&1 kanalları birleştir dosya ya yaz.

Page 8: Linux101 - Standart Gi̇rdi-Çıktı

Standart Çıktının Yönlendirilmesi

SDÜ-CYBERLAB (LİNUX101)

Linux sistemlerde bir komutun çıktısının başka bir komutun standart girdisi olarak kullanmak mümkündür.Bu kullanımı "|" pipe(boru) işareti kullanılır.Kullanıı da şu şekildedir.

Program1 | Program2 : program 1 in çıktısını program 2 ye girdi olarak atar

Program 1 2> hatalar | program2 : program 1 çıktısını 2 ye aktar oluşacak aykırı durumları hatalar dosyasında yazar.

Program1 2> hatalar1 | program2 2>hatalar2 program1 çıktısını 2 ye aktar program1 de meydana gelen hatalar hatalar1 dosyasına 2 de meydana gelen hatalar hatalar2 dosyasına yazılır.

Page 9: Linux101 - Standart Gi̇rdi-Çıktı

Standart Çıktının Yönlendirilmesi

SDÜ-CYBERLAB (LİNUX101)

Page 10: Linux101 - Standart Gi̇rdi-Çıktı

Standart Çıktının Yönlendirilmesi (pipe)

SDÜ-CYBERLAB (LİNUX101)

Resimde gösterilen işlem /etc/passwd dosyasını listeleyip icerisinde linux101 gecen satıları listeleyip tee komutuna girdi olarak aktarılır.Bu işlemlerde tee komutu hem kendine verilen girdiyi işler aynı zamanda kendisinden sonra verilen parametre ile dosyaya kaydeder eğer dosya varsa uzerine yazar yoksa oluştur.

Page 11: Linux101 - Standart Gi̇rdi-Çıktı

Metin İşleme Komutaları

SDÜ-CYBERLAB (LİNUX101)

Unix sistemlerde metin işlemeyi colaylastıran komutlar vardır.Bunlar metin işleme konusunda baya faydalıdır. Örnek olarak:- cat dosya1 dosya2 komutu dosya1 komutu ve dosya2 komutunu birleştirerek ekrana yazar.

-Head -1 dosyanın ilk satırını gosterir -5 ilk 5 satırını gösterir.

-Tail -1 son satırı gosterir -5 son 5 satırı gosterir -f parametresi olarak degişen son parametreleri gosterilir. Genelde log dosylarını okumak icin kullanılır.

-Sort dosya icinde isteğe gore sıralama yapmaya yarar.

-Cut -d “” f1 dosya dosya icerisinde her satırında bosluk karakterine gore parcalar f1 parametresi ile kacıncı bosluk karakterinden sonra parcalayacak onu belirtir.

Page 12: Linux101 - Standart Gi̇rdi-Çıktı

Grep Komutu

SDÜ-CYBERLAB (LİNUX101)

Grep komutu belirli bir dosyadan belirli kalıplara yada kelimelere gore süzme işlemi yapar.Çok kullanışlı ve onemli bir komuttur.

Grep “kelime” dosya dosya içerisinde kelime gecen satırarı getirir.

Grep -i “kelime” dosya dosya içerisinde büyük küçük harf ayrımı yapmadan filtrele getir.

Grep -v “kelime” dosya dosya içerisinde kelime gecen satırları getirme anlamına gelir.

Page 13: Linux101 - Standart Gi̇rdi-Çıktı

Grep Komutu

SDÜ-CYBERLAB (LİNUX101)

Page 14: Linux101 - Standart Gi̇rdi-Çıktı

Metin İşleme Komutları

SDÜ-CYBERLAB (LİNUX101)

Yukaridaki ilk komutda buyuk olan kelimeleri küçük kelimere cevirdik ve bunu ikinci komutta kucuk.txt dosyasına kaydettik.Kayıt işleminden sonra cat komutu ile goruntuledik.

Page 15: Linux101 - Standart Gi̇rdi-Çıktı

Metin İşleme Komutları

SDÜ-CYBERLAB (LİNUX101)

Dİger metin işleme komutları

-split komutu belirli bir dosyadan belirli boyutlara göre verileri parcalamıza yarar.

Split -l 3 dosya 3 satırlık_ dosyadan 3’er satır oalcak şekilde parcalama işlemi yapar ve 3satırlık_ dosyasını sonunu degiştirerek kayıt işlemi yapar.

Split -b 44 dosya 44byte_ dosyadan 44 byte byte olacak şekilde okur vev aynı şekilde kayıt ilemi yapar.

-wc komutu kendisine girdi olarak verilen dosyanın kac kelime , satır ve karakterden olustugunu ekrana basar.

Wc -l dosya kac satırdan oluştuğunu ekrana basar Wc -c dosya kac karakter oldugunu basar.

Page 16: Linux101 - Standart Gi̇rdi-Çıktı

Metin İşleme Komutları

SDÜ-CYBERLAB (LİNUX101)

-More dosya “dosya” içeriğinin sayfa sayfa goruntulenmesini saglar.Sonraki satı için “Enter” sonraki sayfa için “Space”,önceki sayfa için “-b” ,çıkmak için “q” tuşlarına basmak yeterli olacaktır.

-Less dosya “dosya” içeriğini sayfa sayfa görüntüler.Sayfalar arasında geçiş icin yön tuşları kullanılır.Çıkmak için “q” tuşuna basılır.

-Diff dosya1 dosya2 “dosya1” ve “dosya2” arasında bir karşılaştırma yapar ve aradaki farkları ekrana basar.(dosya2’nin dosya1’den farkını basar)