330 likes | 534 Views
BİLGİSAYAR TEKNOLOJİLERİ VE PROGRAMLAMA BÖLÜMÜ BİLG 223 AĞ İŞLETİM SİSTEMLERİ DERSİ. Dosya İşlemleri. Öğr. Gör. Mustafa SARIÖZ. Çalışılan Dizin ve Dizin Degiştirme. Linuxta bulunulan dizini öğrenmek için pwd komutu kullanılabilir. root@srv# pwd.
E N D
BİLGİSAYAR TEKNOLOJİLERİ VE PROGRAMLAMA BÖLÜMÜ BİLG 223 AĞ İŞLETİM SİSTEMLERİ DERSİ Dosya İşlemleri Öğr. Gör. Mustafa SARIÖZ
Çalışılan Dizin ve Dizin Degiştirme Linuxta bulunulan dizini öğrenmek için pwd komutu kullanılabilir root@srv# pwd • Bulunulan dizini değiştirmek için cd komutu kullanılabilir. Bulunulan dizin değiştirilirken cd komutuna iki farklı şekilde parametre verilebilir. • - Geçilmek istenen dizinin tam yolu verilebilir • - Geçilmek istenen dizinin göreli yolu verilebilir. root@srv# cd <gecilecek_dizin>
Dosya ve Dizin Listelemek ls komutu kullanılarak dosya veya dizinler listelenebilir. ls komutu parametre aldığı dizinin içeriğini listeler, eğer parametre olarak bir dizin ismi verilmediyse bulunulan dizinin içeriği listelenir. root@srv# ls
Dosya ve Dizin Listelemek ls komutunun aldığı bazı parametreler aşağıdaki gibidir: -a : Tüm dosyaları göstermek için gereklidir. Gizli dosyaları görmek için kullanılır. -d : sadece klasörlerin listelenmesi -l : Liste şeklinde çıktı üretir. Dosyaların izinleri, sahibi boyutu, son güncellenme tarihi ve adını ekrana yazdırır. -h : Dosya boyutunun okunması kolay formatta yazdırır. -R : rikörsif olarak çalışıp listelenen dizinlerin alt dizinlerinin de listelenmesini sağlar -S : Dosyaların boyutlarına göre listelenmesini sağlar -t : Son değişiklik tarihine göre sıralama -X : Uzantıya göre sıralama -r :sıralamayı tersine çevirir
Çalışılan Dizin ve Dizin Değiştirme Bunların dışında özel klasör isimleri verilerek bulunulan dizin değiştirilebilir. . bulunulan dizin .. bir üst dizin - bir önceki klasör ~ kullanıcının ev dizini ~kullanıcı_adı belirtilen kullanıcının ev dizini Eğer parametre olarak bir yol verilmezse kullanıcının ev dizinine geçer
Yardım (man, info) • Man: man komutu komutlar, sistem çağrıları ve bazı dosyalar hakkında yardım alınabilir, man komutu /usr/share/man dizini altındaki man1..man9 aralığındaki man kitaplıklarını kullanır. Alacağımız yardımın istenilen kitaplıktan gelmesi için man komutunun ardından bu kitaplık numarası sonra yardım başlığı yazılır. root@srv# man <komut>
Yardım (man, info) • INFO: info komutu man komutuna göre daha fazla bilgi içerir ve yardım sayfaları arasında gezinmeye imkan tanır. Kullanımı info komut_adı şeklindedir Eğer parametre verilmeden çalıştırılırsa yardım konularının listesine ulaşılır. Bu listede * ile başlayan her alan bir düğümdür ve bu düğüme gelip [ENTER] butonuna basılırsa bu düğüme girilmiş olunur. • I tuşuna basılarak geri dönülebilir • d tuşu anasayfaya dönmeyi sağlar • q ile info sayfalarından çıkış sağlanmış olur
whatis • whatis komutu ile whatis veritabanında arama yapılarak kısa açıklamalara ulaşılabilir. Sonuçta çıkan rakam o konu ile ilgili yardımın hangi man kitaplığında bulunduğunu belirtir.
apropos • apropos komutu ile whatis veritabanında kelime araması yapılabilir.
Dosya Tipleri • Dosya uzantıları dosyalar ile işlem yaparken kolaylık sağlar, hangi dosyanın hangi uygulama ile açılacağını belirlememizi sağlar. Dosya uzantısı dosyanın isminde son noktadan sonraki kısımdır ve her zaman dosyaların uzantısı olmak zorunda değildir. Dosya tipini belirleyen dosyanın uzantısı değil içeriğidir.
Dosya Tipleri • Linux işletim sistemi temelde 2 farklı dosya tipi bulunmaktadır: - Sıradan dosyalar - Aygıt Dosyaları Aygıt dosyalarısistemde bulunan donanım ile haberleşmeyi gerçekleştiren dosyalardır. İki farklı aygıt dosya tipi bulunmaktadır. - Karakter aygıt dosyaları: Bu tip aygıt dosyası ile erişilen donanımlar bilgilerini karakter karakter iletmektedirler. - Blok aygıt dosyaları: Bu tip aygıt dosyası ile erişilen donanımlar ile iletişim blok aktarma ile gerçekleştirilmektedir. sıradan dosyalar, aygıt dosyaları dışında kalan dosyalardır. Çok fazla çeşitte sıradan dosya tipi bulunmaktadır.
Dosya Tipleri • Dosyaların tipini öğrenmek için file komutu kullanılabilir. root@srv# file <dosya_ismi>
Dosyaların İsimlendirilmesi • Linux’ta dosya isimlerinin uzunluğu 256 karaktere kadar uzayabilir. Dosya isimleri büyük küçük harfe duyarlıdır (case_sensitive). “/” karakteri dosya yolunda kullanıldığı için dosya isimlerinde kullanılmaz • “.” İşareti ile başlayan dosyalar gizli dosyalardır ve ls komutu –a parametresi ile çalıştırılmazsa görülmezler.
Dosya Oluşturmak (touch) • Dosya oluşturmak için touch komutu kullanılabilir. Parametre olarak verilen dosya eğer yoksa boş bir dosya oluşturur. Ayrıca var olan dosyanın son erişim ve son değişme zamanını değiştirilebilir • Dosyaların erişim ve oluşturma tarihlerine stat komutu ile ulaşılabilir. root@srv# touch <olusturulacak_dosya_ismi>
Dosya Oluşturmak • touch komutuna –a parametresi verilerek son erişim tarihi, -m parametresi ile değişiklik tarihi komutun çalıştırıldığı zaman olarak değiştirilebilir. Ayrıca –t parametresi de verilerek bu tarih istenilen bir tarih olarak da değiştirilebilir. –t parametresinin kullanım formatı [[00]YY]MMDDhhmm[.ss] şeklindedir.
Dizin Oluşturmak Dizin Oluşturmak için mkdir komutu kullanılabilir • mkdir ile kullanılabilecek bazı parametreler şunlardır: • -m izinler Oluşturulacak dizin için geçerli olacak izinleri belirler • -p Açılacak dizinin üstü dizinleri yoksa bu dizinlerin de oluşturulmasını sağlar • -v Açtığı dizinleri kullanıcıya bildirilir. root@srv#mkdir <olusturulacak_dizin_adı>
Dosya ve Dizin Silmek • Dosya silmek için rm dizin silmek için rmdir komutu kullanılır. Eğer silinmek istenen dizinin içi boş değilse rmdir komutu dizini silemeyecektir. Bu durumda alt dizinlerle birlikte bir dizini kaldırmak için rm komutunu –r parametresi ile çağırmak gerekir. root@srv# rm <dosya/dizin_adı> root@srv# rmdir <dizin adı>
Dosya ve Dizin Silmek (rm, rmdir) rm komutunun aldığı bazı parametreler şunlardır: -i : komutun interaktif modda çalışmasını sağlar ve her dosya için silmenin onaylanamsı gerekir. root kullanıcısı için tanımlanan aliaslarda bu parametre eklidir ancak normal kullanıcılar için bu alias yoktur -f : kullanıcıdan hiçbir zaman onay istemez. -r : komutun rekürsif çalışp alt dizin ve dosyaların da silinmesi sağlanır -v : yapılan silme işlemi ile ilgili bilgi kullanıcıya bildirilir
Bağlantılar • İki tip bağlantı çeşidi vardır. Sembolik ve sert bağlantı. Sembolik bağlantıda dosyaya kısayol oluşturulur ve dosyaya ulaşılmak istendiğinde bu bağlantıdan erişilebilir. Hedef dosya silinirse bağlantı boşa çıkar. Sert bağlantıda dosya da değişik olduğunda bu değişiklikler bağlantıda da gerçekleşir. Hedef dosya silinse bile bağlantıdan dosyaya ulaşılabilir.
Bağlantı oluşturma (ln) ln komutu link olusturma islemi icin kullanılır. Hicbir parametre verilmez ise hard link olusturulur. Hardlink ile ilgili dosyanın birebir kopyası cıkarılır. Ana dosya silinse bile olusturulan dosya kalır. -s parametresi sembolik(soft) link olusturur. Birebir dosya kopyalanmaz bir nevi kısa yolu olusturulur. root@srv# ln <kaynak_dizin/dosya_ismi> <hedef>
Dosya ve Dizin Kopyalama (cp) • Dosya kopyalamak için cp komutu kullanılabilir root@srv# cp <kaynak_dosya/dizin> <hedef>
Dosya ve Dizin Kopyalama (cp) cp komutunun alabileceği temel parametreler aşağıdaki gibidir. -a : dpR parametrelerinin -d : bağlantıların korunmasını sağlar -p : sahip ve tarih bilgilerini saklar -R : rekürsif olarak işlem yapar -l : kopyalama yerine hard link oluşturur -s : kopyalama işlemi yapmayıp sadece sembolik bağlantı oluşturur -u : değişmiş olan dosyaları kopyalar -v : ekrana işlem ile ilgili bilgi bastırır
Dosya ve Dizin Taşıma (mv) • Dosya ve Dizinleri taşımak için mv komutu kullanılabilir. Dosyalar taşınırken eğer kaynak hedef olarak gosterilen isimde bir dosya var ise bu dosyanın yazma işlemi yapılır, dizinler taşınırken bu isimde hedef olarak gösterilen dizin varsa bu dizinin içine kopyalama işlemi yapılır. root@srv# mv <kaynak_dosya/dizin> <hedef>
Dosya ve Dizin Taşıma • mv komutunun alabileceği bazı parametreler • -i hedef dosya veya dizin varsa üstüne yazma için onay alır • -f hedef dosya veya dizin varsa üstüne yazma işlemini onay almadan yapar • -v ekrana işlem ile ilgili bilgi bastırır
Dosya Okuma Dosya okuma için temel olarak kullanılabilecek komutlar şunlardır: - cat - more - less - tac - rev - head - tail
cat Dosyanın içeriğini ekrana yazdırılmasını sağlar -i Metin içerisinde geçen tab karakterlerini ^I olarak gösterir. -e Satır sonlarının $ olarak görüntülenmesini sağlar., -A et -n satırları nuumaralandırır. root@srv# cat <dosya_ismi>
more Dosyaların içeriğini sayfa sayfa gösterir. boşluk veya f bir sayfa sonraya gider / ile arama yapılabilir, n bir sonraki arama sonucuna gider. b bir sayfa geriye gider Çıkış için q
less Aşağı ve yukarı ok tuşlarıyla sayfada ilerlenebilir boşluk veya f bir sayfa sonraya gider b bir sayfa geriye gider / ile arama yapılabilir, n bir sonraki arama sonucuna gider Çıkış için q
tac dosyanın içeriğini sondan başa doğru gösterir
rev dosyanın içeriğini her satırı ters çevirerek gösterir
head Bir dosyanın içeriğinin baştan belirtilen satır kadar gösterilmesini sağlar. Öntanımlı değeri 10 dur root@srv# head <dosya_ismi> head -15<dosya_ismi> komutu ile baştan 15 satır görüntülenebilir.
tail Bir dosyanın içeriğinin sondan belirtilen satır kadar gösterilmesini sağlar. Öntanımlı değeri 10 dur –f parametresi ile değişen bir dosyanın sonuna gelen satırlar dinamik olarak görülebilir, log dosyaları incelenirken sıklıkla kullanılır. root@srv# tail <dosya_ismi> tail -15<dosya_ismi> komutu ile sondan 15 satır görüntülenebilir