Melekyarim.CoM Aşk Sevgi Bayanlara Özel Erkeklere Özel Sağlık Bilgisi Ödev Rüya Tabirleri Paylaşım Platforumu
23 Mayıs 2012, 22:00:25 *
Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.

Kullanıcı adınızı, parolanızı ve aktif kalma süresini giriniz
Duyurular: Foruma üyelerimizin yazdığı mesajlar kontrolden geçmemektedir ve mesaj içeriğinden üye sorumludur. Mesajlarda Yasa Dışı İçerik Bildirimi Yapmak İstiyorsanız Lütfen melek.yarim@hotmail.com Adresine Mail Atınız

Forumumuz Linkler Dışında  Gizlenmiş değildir.
Üye Olmayan Ziyaretçilerimiz Bütün Forumu Görebilirler Fakat Yeni Konu Açamazlar ve Konulara Cevap Yazamazlar. Forumumuzu tam anlamıyla kullanabilmek İçin Üye Olmalısınız. Üyelik Ücretsizdir.

 

Sayfa: [1]   Aşağı git
  Yazdır  
Gönderen Konu: Linux Komut Yapısı  (Okunma Sayısı 471 defa)
 
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
DiLKeTYaMiN

Ziyaretçi

Durumum:

« : 08 Eylül 2007, 18:03:43 »

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.
Logged
DiLKeTYaMiN

Ziyaretçi

Durumum:

« Yanıtla #1 : 08 Eylül 2007, 18:03:58 »

Dosya ve Dizin Yapısı
UNIX altında bazı karakterlerin özel anlamları vardır. Dizin ve dosya isimlerinin başında nokta olması durumunda bu dosyalar gizli dosya haline gelir ve parametresiz yazılan ls komutuyla görünmez.

Dosya ve dizin isimleri 255 karakteri aşamazlar.

Sisteme girince önceden tanımlanmış bir dizin altında bulunursunuz. Bu dizin normal kullanıcılar için genellikle /home/ ve ardından gelen kullanıcı dizini ismidir. Bulunduğunuz dizinin ismini görmek için pwd (print working directory) yazın. Temel dosya ve dizin kavramları hakkında ayrıntılı bilgi alabilmek için MS-DOS veya, en iyisi bir UNIX kitabı edinin.


Kod:
$ pwd
/home/gorkem
$
UNIX komut yapısı DOS'a çok benzer. Dizin değiştirmek için cd, dizin yaratmak için mkdir komutlarını sistemde sıkça kullanılır.

Kod:
$ cd /
$ pwd
/
Hiyerarşik bir sıraya sahip olan UNIX'te en üstte / dizini (kök dizin) yeralır. Sistemdeki tüm diğer dosya ve dizinler bunun altında toplanırlar.


Kod:
~
işareti, kullanıcının ev dizinini gösterir. Ev dizinine geçin ve mkdir komutu ile benim isimli bir dizin yaratın. Dizini patikasını, bir başka deyişle kök dizininden itibaren ismini vererek de yaratabilirsiniz.


Kod:
$ cd ~
$ pwd
/home/gorkem
$ mkdir /home/gorkem/benim
Dosya Listesi ve İçeriklerinin Görüntülenmesi

Dosya ve dizinleri görebilmek için ls komutu kullanılır. Parametresiz yazarak bulunduğunuz dizin hakkında bilgi alın. Linux altında değişik uzantılı dosyalar okunabilirliği artırmak amacıyla farklı renkte görülecektir. /etc/DIR_COLORS dosyası, dosya renklerini ayarlar. Bu dosyayı değiştirerek belirli dosyalar için istenilen renkleri göstermesini sağlayabilirsiniz.

Kod:
linux:~$ ls
README  article.txt     mail       typescript
adres   linux           perl
ls komutu -a parametresiyle birlikte kullanılırsa normalde görükmeyen ve nokta karakteriyle başlayan dosya ve dizinler de görükür.


Kod:
linux:~$ ls -a
.               .bashrc         .term           article.txt     typescript
..              .kermrc         .xinitrc                linux
.Xdefaults      .less           README  mail
.bash_history   .lessrc         adres           perl
-l parametresi de dosyalar hakkında tüm bilgiyi verir. Bunlar, dosyanın sahibi, ne zaman yaratıldığı, sahibi ve grubu gibi bilgilerdir. Dosya izinleri hakkında daha geniş bilgi bir sonraki bölümde verilmiştir.


Kod:
linux:~$ ls -al
total 91
drwxr-xr-x   6 gorkem   users        1024 Feb 13 12:56 .
drwxr-xr-x   4 root     root         1024 Jan  7  1980 ..
-rw-r--r--   1 gorkem   users         390 Feb 13 12:56 .Xdefaults
-rw-r--r--   1 gorkem   ftpadm        230 Feb 13 12:57 .bash_history
-rw-r--r--   1 gorkem   users           1 Feb 13 12:57 .bashrc
-rw-r--r--   1 gorkem   users         163 Nov 24  1993 .kermrc
-rw-r--r--   1 gorkem   users          34 Nov 24  1993 .less
-rw-r--r--   1 gorkem   users         114 Nov 24  1993 .lessrc
drwxr-xr-x   2 gorkem   users        1024 Jan  7  1980 .term
-rw-r--r--   1 gorkem   users          87 Feb 13 12:56 .xinitrc
-rw-r--r--   1 gorkem   users       26264 Feb 13 12:53 README
-rw-r--r--   1 gorkem   users        2795 Feb 13 12:55 adres
-rw-r--r--   1 gorkem   users       47970 Feb 13 12:53 article.txt
drwxr-xr-x   2 gorkem   users        1024 Feb 13 12:54 linux
drwxr-xr-x   2 gorkem   users        1024 Feb 13 12:54 mail
drwxr-xr-x   2 gorkem   users        1024 Feb 13 12:54 perl
-rw-r--r--   1 gorkem   users           0 Feb 13 12:57 typescript
Yukarıda her iki parametrenin de birleştirilerek birlikte kullanımı yeralmaktadır. Dosyaların içeriklerini görmek için kullanılan birkaç komuttan en pratiği less'tir. Ok tuşları ile dosya içinde hareket edebilir ve q karakteri ile dosyadan çıkarsınız. Dosyanın içeriği birden fazla sayfadan ibaretse dosya sayfalar halinde ekrana gelir. Tüm dosyayı ekrana basmak için cat kullanın.


Kod:
$ cat README
Bir dosyanın başından veya sonundan itibaren belirli miktarda satırı ekrana getirmek de mümkündür. Bunun için head ve tail komutları kullanıcının hizmetine sunulmuştur

Kod:
linux:~$ head -6 README  => dosyanin ilk 6 satirini ekrana basar
This is the README file for the 28 August 1994 public release of the
Info-ZIP group's portable UnZip zipfile-extraction program (and related
utilities).

unzip512.zip    portable UnZip, version 5.12, source code distribution
unzip512.tar.Z  same as above, but compress'd tar format

linux:~$ tail -3 README (dosyanin son 3 satirini ekrana getirir)

-- Greg Roelofs (Cave Newt), UnZip maintainer/container/explainer and
   developer guy, with inspiration from David Kirschbaum
Dosyaların Kopyalanması
Dosyaları kopyalamak için cp ve bir yerden başka bir dizine almak için mv komutu kullanılır. mv komutu, aynı zamanda dosya isimlerini değiştirmek üzere de işletilebilir.


Kod:
linux:~$ cp article.txt /tmp
article.txt isimli dosyayı /tmp dizinine kopyalar.


Kod:
linux:~$ mv article.txt /tmp/article
article.txt isimli dosyayı /tmp dizini altina ismini article olarak degistirerek koyar.

Kopyalama işlemi sadece dosyalar üzerinde değil, dizinler üzerinde de yapılabilir. Farklı dosya sistemleri üzerinde olmamak kaydıyla bir dizin ve altındaki herşeyi, başka bir dizine kopyalayabilir veya hareket ettirebilirsiniz. Kopyalarken bu işlem için -R parametresi kullanılır, mv komutu için -r parametresine gerek yoktur.


Kod:
$ cp -R /home/gorkem/temp /tmp
/home/gorkem/temp dizinini ve içindeki her dosyayı /tmp altına kopyalar.


Kod:
$ mv article.txt ~/benim
article.txt isimli dosyayı çalışma dizini altındaki benim dizinine kopyalar

Dosyaların Silinmesi
Bir daha kullanılmayacak olan dosyalar, rm komutuyla silinebilir. Dosyaları silerken iki kere düşünün, zira Linux altında silinen bir dosyanın geri dönüşü olmaz. Eğer bu tür hataları çok yapıyorsanız rm komutunu -i parametresi ile birlikte kullanın, bu sayede Linux, dosyayı silmeden önce kullanıcının da onayını alır.


Kod:
linux:~$ rm -i README
rm: remove `README'? y  (sileyim mi ?)
linux:~$
Eğer dosya ismi - karakteri ile başlıyor ise, rm komutunu kullandığınız zaman dosya ismi bir parametre olarak algılanacak ve hata verecektir. Bunun için dosya isminden önce -- karakterlerini yerleştirin.


Kod:
linux:~$ rm -- -dosya
Bir dizin, boş iken rmdir komutu ile silinebilir, eğer boş değilse bu komut işe yaramaz. Onun yerine rm komutunu -r parametresiyle kullanın


Kod:
linux:~$ rm mail
rm: mail: is a directory
linux:~$ rm -rf linux/          (linux dizinini icindekilerle birlikte silinir)
-f parametresi ile kullanıcının onayını almadan tüm dosyaları tek adımda silmek mümkündür. Bulunduğunuz dizindeki tüm dosyaları silmek için * karakterini kullanın.


Kod:
$ rm *
Logged
Sayfa: [1]   Yukarı git
  Yazdır  
 
Gitmek istediğiniz yer:  

|Site Map | Arşiv | Wap | Wap2 | Wap Forum | XML | Rss
MySQL ile Güçlendirildi PHP ile Güçlendirildi Powered by SMF 1.1.11 | SMF © 2006-2008, Simple Machines LLC XHTML 1.0 Geçerli! CSS Geçerli!
Bu Sayfa 0.143 Saniyede 23 Sorgu ile Oluşturuldu