Linux Komut Yapısı


UNIX ve benzeri işletim sitemlerinde kullanıcının komut yazmasını
sağlayan, bu komutları yorumlayarak gerekli işlemleri yapan programlara
kabuk (shell) adı verilir. UNIX'te bir kullanıcı bir dizi kabuktan
istediğini seçebilir. Kabuklar ile ilgili ayrıntılı bilgi ileride
verilecektir. Kullandığınız kabuk ne olursa olsun, gerek kabuktan
kaynaklanan, gerekse UNIX komutlarının hepsinin uyduğu bazı
standartlardan kaynaklanan bazı geleneksel yapılar vardır. Bunları
bilmeniz ilk kez duyduğunuz bir komutun kullanımını bile kolayca
çıkarabilmenizin yanı sıra, bir dizi genel hatadan kaçınmanızı da
sağlayacaktır.


  • UNIX'te (ve Linux'ta) bütün komutlar ve dosya isimlerinde
    büyük/küçük harf ayrımı önemlidir. Sistem komutlarının ve
    dosyaların çoğu küçük harfle yazılır.

  • Komut ve dosya adlarında kullanacağınız bazı karakterlerin gerek
    dosya ve dizin yapısı, gerekse kabuk ve diğer komutlar nedeniyle
    bazı özel anlamları vardır. Bu karakterlerden yeri geldikçe söz
    edilecektir. Örneğin, `/' karakteri hiçbir dosya adında
    bulunamaz (dosya ve dizinler için ayraç olarak
    kullanıldığından). `-' ile başlayan bir dosya oluşturulabilir
    olsa da silmeye kalktığında yeni bir UNIX kullanıcısının başına
    dert açabilir.

  • UNIX'te komutlara seçenek verirken seçenekten önce `-' karakteri
    kullanılır. Örneğin ls -l

  • UNIX komutları tersi istenmedikçe girdilerini standart
    girdiden
    (klavye) alır, çıktılarını standart çıktıya
    (ekran) yazar. Bu özellik ileride anlatılacak olan yönlendirme
    ve boru (pipe) öperatorleri ile birlikte komut satırından birçok
    işlemi kolayca yapmanızı sağlar.

  • UNIX kabukları komut satırından verilen komutu çalıştırmadan önce
    bir dizi karakteri yorumlayarak dosya ad(lar)ına çevirirler. Bu
    karakterler:


    • * 0 dahil herhangi bir sayıda karakter yerine geçer.
      Örneğin rm * komutu bütün dosyaları siler, ls
      -l a*
      komutu `a' ile başlayan dosyaların listesini
      verir.

    • ? tek bir karakter yerine geçer. Örneğin ?? adı iki
      karakterden oluşan bütün dosyalar anlamına gelir.

    • [] karakterleri arasında yazılan liste
      içindeki herhangi bir harfe dönüştürülür. Örneğin cp
      *[abc] /tmp
      komutu `a', `b' ya da `c' ile
      biten bütün dosyaları /tmp dizinine
      kopyalayacaktır. liste içinde aralarına `-' işareti
      koyarak aralıklar verebilirsiniz. Örneğin,
      [A-Z]* büyük harfle başlayan bütün
      dosyalar anlamına gelir. Liste içindeki `^'
      karakteri sonrasında belirtilen liste dışındaki bütün
      karakterler anlamına gelir. Örneğin
      *[^0-9]* adında rakam olmayan
      herhangi bir dosya anlamına gelecektir.


Hanci.org sizlere daha iyi hizmet sunmak için çerezleri kullanıyor.
Hanci.org sitesini kullanarak çerez politikamızı kabul etmiş olacaksınız.
Detaylı bilgi almak için Gizlilik ve Çerez Politikası metnimizi inceleyebilirsiniz.