Unix Eğitim Notları – 2. Bölüm

2. Bölüm

Daha önceki makalemizde konunun devamına Unix Eğitim Notları – 2. Bölüm olarak kaldığımız yerden devam ediyoruz.

Text Editörler

Vİ, NANO, PİCO EMACS vardır. En çok kullanılan editör ise VI editörüdür.

VI Editörü

vi solaris dediğimde dosya açılır. Yoksa da oluşturacaktır. Ancak hiçbir değişiklik yapmadan çıkarsak işlem yapmayacaktır.

2 mod vardır. Inser t Mod, ve Komut Modu

Insert Mod : i, a, o, s tuşu ile bir şeyi eklemek için insert moduna geçiş yapmak gerekir.

Editörden Kopyala yapıştır için

ESC ile komut moduna geliriz.

Tüm satır için

Bulunduğumuz satıra geliyoruz.

Yy : Kopyalama

P : yapıştır.

Bir Metin için

Kelimenin başından itibaren cursor’u konumlandırmalıyız.

y: Kopyalama

w: Yapıştır.

İlk 6 satır  kopyalamak için kısayol

6yy : Kopyala

P : Yapıştır

dersek 6’cı satırı kopyala, Yapıştırmak istenen konuma git. P ile yapıştır. Ya da

6yy : 6. satırı kopyala

6p : 6 kere bulunduğumuz konuma yapıştırır.

Kesme İşlemi

cc : Keser (Dikkat Insert moda gecer. Esc  ile cikip kesme moduna gec)

Pp : yapistir.

Satır Silmek için

Dd : Bulunduğumuz konumdaki satırı siler.

6dd : Bulunduğumuz konumdan itibaren sonraki 6 satırı siler.

Undo

u: En son konuma bir sefer gider.

Redo

: En son geri alınan işlemi tekrar çağırır.

Kelime Arama

 : /aranacak kelime

N ile bir sonraki kelimeye

Shift  + n ile de geri aramasına diger.

Save İçin

:w tmp’de tutan verileri direk diske yazar.

Save As İçin;

:w /uygulama/saveas yaparak dosyanın ismini verdiğimiz için yeni olarak kaydeder.

Kaydetmeden çıkmak için

: q

Satır Numarasını gösmek için

:set nu

Satırın Sonuna

 : $

Satırın Başına

: 0

Dosyanın Sonuna

: shift + g ya da ” ] ” (Shift + Alt Gr + 9 )

Dosyanın Başına :

:1

Dosyadan Çıkmak için: wq, Shift +zz, q! gibi değişik kombinasyonlar vardir.

Dosyayı Görüntülemek için

More

Büyük dosyalar için kullanabiliriz. Dosyayı görüntülemek için

more dosya adı

Yukarı : b

Aşağı : z

Çıkmak için : q

Cat

Daha küçük dosyalar için kullanabiliriz.

Less

 Alternatif Görüntüleme programı

Sort

sort dosyaadı ile dosyanın içerisini sıralamak için kullanırız.

Tersten sıralamak için sort -r dosyaadı

Grep

Bir dosya içerisinde bir kelime aramak için kullanılır.

Grep “aranacak kelime” “dosya adı”

Grep  mustafa save as

 

İki kelimeyi veya mantığı ile aramak için

egrep e- ‘ilk kelime’ -e ‘ikinci kelime’  dosya adı

Ya da

egrep ‘mustafa|sd’ ile de arayabiliriz.

Tüm klasörlerde her dosyanın içinde kelime aramak için

grep -r -i aranacakkelime  dosyanınyolu

Grep -r -i abc /

Find

find  aranacak yer -name aranacak kelime find / name solaris

-name : Arama opsiyonu isme göre aratmış oluyorum. Bu opsiyonlar çok farklı arama yapabiliyoruz.

Sadece dosyaları göstermek için Find / -name solaris -tyle f  (f dosyayı temsil eder)

Örnek :         adı : “Deneme1”

Sahibi : root

Tipi : dosya

Bulunan sonuçları : sil

Yapmak için kullanılacak komut;

find / -name deneme1 -user root -type f -exec rm {} \;

Cut

Sercan,kaya, 1234

Mustafa,cetin, 4321

Cut –f2,3 –d, dosya adı

-f 2 ve 3 alanları ya da sutunları listele –d ile de ne ile ayrıştığı gösterilir.

En sonuna da dosya adını yazarız.

Pipe (  |  )  Önemi

find -type f -user root -name deneme1 | xargs cat

Bulduğu sonucu pipe a kadar ile sonucu bulur. Pipe isaretinden sonra tekrar islemi yapar .

WC

WordCount Toplam Satır kelime ve karakter sayılarını verir.

Sadece satır satısı ise wc -l

NL

Tüm satırlarının yanına satır numarası koyar. Ancak boşlukları saymaz. Wc Boşlukları da sayar.

Touch file{1..10} ile file1, file2 … file10 şeklinde dosya oluşturur.

Echo

Echo merhaba;

Bir şeyin yansıması nı yapar.

Echo “im $[2011 – 1985] yaşıdır.”

Bu şekilde hesaplama yapılır.

Sadece adı file ile başlayanları listele.

ls file

Sadece 5 karakterlileri listele

ls ?????

5 karakterli sonu 6 olan

ls ????6

İlk harfi a ile f arasında başlayan sonu ne olursa olsun

ls [a-f]*

Bu komut ile büyük F ile başlayanları göstermedi. Sebebi

aAbBcCdDeEfF sıralaması olması küçük sonra büyük olarak sıralanır. Buna göre komut

ls [a-F]* demeliyiz.

 

Büyüktür İşareti > ile Dosya Oluşturma

> dosyaadı dediğimizde sorgu çıktısını dosyaya yazdırır.

> komutun çıktısını dosya ya kaydeder.

>> ise var olan dosyanın altına ekler.

Küçüktür < İşareti ile Sağdaki komut ile çalıştır.

Sağ taraftaki dosya içeriğinin komutları soldaki komut ile çalıştırır.

wc -l < root.txt

Root.txt dosyasını wc -l ile çalıştırmış oluyor.

<< Iki Küçüktür

wc ül << EOF

EOF kelimesini bulana kadar listeleme yapar.

; Noktalı Virgül

Iki komutu tek satırda yazabiliyorum.

Echo merhaba ; ls gibi.

Pipe | Karakteri

Bir komutun çıktısını diğer

Nl rootdir.txt

Örnek-1

  • _ / etc / Passwd dosyasını numaralandırılmalı
  • Başında “root” kelimesi olan satırı kes
  • Bu satırdaki şifre ve default shell alanlarını bulup
  • Karakter sayısını txt dosyasına yazdır.

Cevap-1

grep ^root /etc/passwd | nl | cut –f2, 7 –d: | wc –m > sonuc.txt

Açıklama-1

^ işareti root ile başlayanlar bulmasını sağlar.

Cut komutu ile belirli alanları kesmek için kullanırız.

Örnek-2

  • etc/passwd dosyasında “sh” kelime ile bitmeyen satırlar bul
  • Numaralandır
  • ve 5. Alanları kes
  • Toplam satır ve karakter sayısını sonuç.txt dosyasına ekle

Cevap-2

grep  sh$ /etc/passwd | nl | cut –f1, 5 –d: | wc –m > sonuc.txt

 

Dosya ve Klasör İzinleri

d rw- r — r —

d = dosyanın tipi

r = read = 4

w = write = 2

x = execute = 1

  • d rw- r — r — İlk üç karakter dosya sahibine aittir.
  • d rw- r — r — Sonraki üç karakter sahip grubuna aittir.
  • d rw- r — r — En son grup ise son kullanıcılara aittir.

U = user

G = grup

O = diğerleri

Örnekte ;

İlk üç grupta rw- ‘de r = 4, w = 2 Toplam = 6

Orta üç karakterde r–  = 4

Son üç Karakterde  r– =  4

Sonucu 644 sonucu olacaktır. Bu yetkileri artırmak için;

Chmod 777 rootdir.txt dediğimizde dosyaya tam yetki vermiş olacağız.

Execute Kaldırmak için

Execute hakkını kaldırmak için chmod

–x dosya adı dediğimizde execute yetkileri kalkar.

+x ise execute yetkisi vermiş oluruz.

Execute Eklemek için

Chmod u+x rootdir.txt

user kullanıcılarına execute yetkilerini tanımlamış oluruz.

Sahipliğini Değiştirmek için

chown kullanıcı adı dosya adı

chown bin rootdir.txt

Sahip Grubunu değiştirmek için

Chgrup bin rootdir.txt

 

3. Gün Ders Notlarını Gelecek Hafta paylaşacağım. Haftaya Görüşmek üzere…

Cevap bırakın