Filed under: Unix
UNIX, 1969 yılında, Ken Thompson ve Dennis Ritchie tarafından Bell Laboratuvarları’nda geliştirilmiş, çok kullanıcılı, çok görevli yapıyı destekleyen bir bilgisayar işletim sistemidir.
UNIX türevi işletim sistemleri çok işlemcili çok pahalı makinalardan, tek işlemcili basit ve çok ucuz ev bilgisayarlarına kadar pek çok cihaz üzerinde çalışabilen esnek ve sağlamlığı çok değişik koşullarda test edilmiş sistemlerdir. Fakat özellikle kararlı yapısı ve çok kullanıcılı-çok görevli yapısıyla çok işlemcili sunucularda adeta standart haline gelmiştir.
Linus Torvalds tarafından temelleri atılan Linux, UNIX olmayıp bir UNIX türevidir. UNIX’ten ilham alan, bir grup bağımsız yazılımcı tarafından geliştirilen bir işletim sistemi çekirdeğidir. Unix’le ilgili bu kısa açıklamadan sonra şunu da belirtmekte yarar var UNIX sistemlerde kullanılan komutlarda BÜYÜK/küçük harf duyarlılığı vardır. Eğer BÜYÜK/küçük harf duyarlılığına dikkat edilmezse komutlar çalışmayabilir.
Herhangi bir UNIX işletim sistemini kullanmak durumunda olan kullanıcılar Windows XX veya NT X.XX ortamından çok farklı olarak birçok komutu “hatırlamak” durumundadır. X/Open veya X-Windows gibi arayüzler kullanıyor olmanız bu yükü biraz azaltıyor olsa da sonucu çok fazla etkilememektedir: UNIX bir komut-tabanlı kullanım arayüze sahiptir. Yardımcı olacağı düşünülen ve çok sıkça kullanılan komutların bazıları aşağıda örnekleri ile verilmiştir. Kullandığınız UNIX hangisi olursa olsun, hepsinde de bulabileceğiniz bir komut olan man kullanım kılavuzu manual kelimesinden türetilmiş bir komutdur. Bu komut aracılığı ile herhangi bir komut için detay bilgi elde etmek mümkündür.
Unix komutlarını komut modunda girmeniz gerekir. Kullandığınız komut-yorumlayıcı arayüze (shell) bağlı olarak komut satırında: %, $, #, … benzeri karakterler veya prompt komutu aracılığı ile değiştirilmiş daha kullanıcıya özgü hale getirilmiş karakterler veya kelimeler görmek mümkündür. En yaygın kullanılan örnek:
Bilgisayar-adı/kullanıcı-adı: olabilir.
Komutların genel yapısı
Unix komutları üç bölümden oluşur:
komut seçenekler argümanlar
Seçenekler, komutun hangi şekliyle çalıştırılacağını, argümanlar ise komutun ne üzerinde çalıştırılacağını belirler. Örnek: ls -al mail
alias
Alias, sıkça kullandığınız bir komutu olduğu gibi yazmak yerine komutu kısaltarak kullanmanızı sağlayan bir komuttur:
alias kısaltma komutun asli (C ve TC shell’leri için)
alias kısaltma=komutun asli (Korn shell için)
MSDOS ortamından alışkın olduğunuz DEL komutu gibi bir komutu sistemde kaldğınız sürece kullanabilmek için ( C veya TC shell):
alias del ‘rm -i’
yukarda verilen komutu geçersiz hale getirmek için:
unalias del
biff
Bu komut bir köpeğin postacıya havlamasını çağrıştırma mizanseni çerçevesinde çalışır. Size bir elektronik ortamda bir mesaj ya da posta geldiğinde ekrana bir mesaj yazarak sizi bilgilendirir. Ekranda çıkan mesajlardan kurtulmak veya ekranınızı tazelemek için Ctrl ve 1 tuşlarına birlikte basmanız yeterlidir. Biff komutunu aktif hale getirmek için:
biff y
İnaktif hale getirmek için:
biff n
yazmak yeterlidir. Kullanıcı profil dosyalarına (.login, .profile) yazmak ve kullanıcı her iş numarasına girdiğinde otomatik olarak ayarları yapmasını sağlamak mümkündür.
cal
Kullanıcı bu komutu girdiğinde verilen ay ve/veya yıl için ekrana bir takvim getirir. İçinde bulunduğunuz ay için:
cal
Herhangi bir yıl için oniki aylık bir takvim için (örneğin 1999):
cal 1999
Herhangi bir yılın herhangi bir ayı için (örneğin 1969 yılı, haziran ayı için):
cal 6 1969
cat
Text dosyaların ekrana listelenmesi veya bir dosyanın sonuna diğer bir dosya yada dosyalardan bilgilerin eklenilmesi için kullanılır.
dosya1 in sonuna dosya2 yi eklemek için:
cat dosya2 >> dosya1
dosya1 in içeriğini ekrana listelemek için
cat dosya1
cat komutu kullanıldığında dosyanızın uzunluğu ekran büyüklüğünden fazla ise, ekran kadarını listelemek ve devamını daha sonra görmek için | işareti ve more komutu birlikte kullanılabilir.
cat dosya1 | more
cd
Bu komut ile bulunduğunuz dizin yada alt-dizinin yerini değiştirirsiniz. İş numaranızı kullanma hakkına eriştiğinizde Unix doğrudan size ait dizinden kullanım hakkınızı başlatır.
Bulunduğunuz yerden bir alttaki altdizin1 dizinine geçmek için:
cd altdizin1
bulunduğunuz yerden /usr/dvader/empire_docs dizinine geçmek için:
cd /usr/dvader/empire_docs
bulunduğunuz yerden bir üst dizine geçmek için:
cd ..
Bulunduğunuz yerden en üstteki root dizinine geçmek için:
cd /
herhangi bir dizinden kendi giriş (home) dizininize dönmek için:
cd
chmod
Unix dosya sisteminde dosyalarınız kullanım hakları önceden tanımlanmıştır. Gerektiğinde değiştirme hakkı olan kullanıcılar tarafından bu haklar değiştirilebilir.
Bu izinler okuma (r, read),
yazma ya da değiştirme (w, write, modify) ve
çalıştırma (x, execute) olup kısaca r, w, ve x ile belirtilir.
Chmod komutu ile dosyaların sahibi (u, user), kullanıcının ait olduğu grup (g, group) ve diğer tüm kullanıcılar (o, others) için bu haklar + ile verilip – ile alınabilir.
Dosya1 adlı dosyanızın çalıştırılabilir olması için:
chmod u+x Dosya1
Tüm kullanıcıların Dosya1 adlı dosyayı okuyabilmesi ve çalıştırabilmesi için:
chmod o+rx Dosya1
Tüm kullanıcıların Dosya1 adlı dosyayı okumasını engellemek için:
chmod o-r Dosya1
![]()
cp
Bu komut ile dosyaların bir kopyasını yaratmak mümkündür. Kopyalama işlemi yapılırken eğer var olan bir dosya adı kopya-dosya için verilirse o dosya bozulacaktır. Bu tür sorunları önlemek için ikincil bir önlem olarak cp komutu ile birlikte -i verilebilir. Bu durumda komut girildikten sonra emin olup olmadığınız sorulacaktır.
Genel kullanımı:
cp -i eskidosya kopyadosya
/usr/dvader/notes dizini altındaki dosya1 bulunduğunuz dizine kopyalamak için:
cp -i /usr/dvader/notes/dosya1 .
nokta (.) bulunduğunuz dizini anlatmak için kullanılmaktadır.
Byulunduğunuz dizindeki eskidosya adlı dosyayı giris dizininize yenidosya olarak kopyalamak için:
cp -i oldfile ~/girişdizini/yenidosya
~ (tilde) işareti sizin giriş dizininizi ifade etmektedir.
date
Günün tarihini ve zamanı görüntülemek için kullanılır:
date
du
Oldukça yararlı komutlardan biridir. Genel olarak disk kullanımı hakkında rapor verir. du bütün alt dizinleri de kontrol eder ve ne kadar boş alan var, toplam dosyaların işgal ettiği alan ne kadardır gibi bilgileri verir.
du
Verdiği rakamlar sistemlere göre farklılıklar gösterebilir. Çünkü bazı sistemler dosya uzunluklarını ölçerken 512 byte bir blok olarak kabul eder, bazıları 1024 bytei. Eğer herzaman kilobyte cinsinden veri elde etmek isterseniz :
du -k
find
Dosya aramak için kullanılır. Çok sık kullanılabilecek komutlardan biridir.
Dosya1.txt adlı dosyayı bulunduğunuz dizin ve olası bütün alt dizinlerinizde aratmak için:
find . -name Dosya1.txt -print
uzantısı txt olan bütün dosyaları dosyayı bulunduğunuz dizin ve olası bütün alt dizinlerinizde aratmak için:
find . -name “*.txt” -print
bu örneklerde . bulunduğunuz dizini anlatmak için kullanılmıştır. Bunun tesrine herhangi bir dizin adı veya daha detay bir dosya yolu (path) konulabilir.Örneğin Dosya1.txt adlı dosyayı /home/user/kullanıcıadım/ altında ve alt dizinlerinde aratmak için:
find /home/user/kullanıcıadım/ -name myfile.txt -print
finger
Bu komut ile o anda kullanıcılardan kimin sistemde çalışıyor olduğunun veya en son ne zaman çalıştığının bilgisini elde edebilirsiniz. Eğer kullanıcı tanım bilgileri (telefon, adres vb) de kullanıcı tanımlanırken verilmiş ise onları da ekrana getirir. hasan adlı kullanıcı için:
finger hasan
Fakat kullanıcı hasan bulunduğunuz sistemde değil ise o zaman hangi sistemde olduğunu da belirtmek gerekir. Mesela hasan adlı kullanıcı info.ceit.metu.edu.tr adlı sistemde tanımlı ise:
finger hasan@info.ceit.metu.edu.tr
grep
grep komutu bir ifadeyi dosyalar içinde arar ve bulduğu satırı ekrana listeler. Komutun kullanımı şu şekildedir:
grep [ifade] [dosyaadi] (veya adları)
$ grep xyz dosya1
xyz abcdefg
Örneğe göre, ‘dosya1′ dosyasının içinde ‘xyz’ ifadesinin geçtiği satır ekranda görüntülenmiştir.
Aranılan ifadenin bulunduğu dosya isimlerini ekranda görüntülenmek için grep komutunun kullanımı şu şekildedir:
grep -l [ifade] *
$ grep -l xyz *
dosya1
Örneğe göre ‘xyz’ ifadesi ‘dosya1′ isimli dosyada bulunmaktadır.
jobs
Halen çalışmakta olan veya Ctrl-Z komutu ile bekletilmekte olan işlerin bir listesini görmek için kullanılır.
jobs
Her işe ait bir numara listelenir. Eğer beklemekte olan bir işi aktif hale getirmek istiyorsanız % işareti ve işin numarasını vermek yeterlidir:
%2
kill
Çalışmakta olan bir işi durdurmak için kullanılır. İşin numarası biliniyor ise:
kill %3 İşi ne durumda olursa olsun durdurmak isterseniz -9 opsiyonu ile birlikte verilmesi gerekir:
kill -9 %3
lpr and lp
Yazıcıdan çıktı almak için kullanılırlar. Lpr Digital şirketinin kullandığı Unix lerde, lp HP-UX- AIX, Solaris, IRIX de kullanılır. Dosya1 adlı dosyayı lp1 adlı yazıcıya göndermek için:
lpr -Plp1 Dosya1
Aynı dosyayı lp komutu ile:
lp -dlp1 Dosya1
ls
Dosya isimlerinin listelenmesi için kullanılır.
Dosya büyüklüklerini, üzerindeki hakları da görebilmek için:
ls -la
Eğer ekran uzunluğundan çok dosya ismi listeleniyor ise ekran boyutu kadar almak ve devamını da alabilmek için | more komutu kullanýlýr
ls komutuyla kullanılan bazı seçenekler aşağıdaki tabloda verilmiştir.
| Seçenek | Sonuç |
|---|---|
| -a | ‘.’ ile başlayan gizli dosyalar dahil, dizinin tüm içeriğini listeler |
| -l | Dosyalar hakkında daha ayrıntılı bilgiler vererek listeleme yapar |
| -d | -l seçeneği ile birlikte, içinde bulunulan dizinin durumunu verir |
| -s | Kilobyte cinsinden dosyaların büyüklüğünü verir |
| -t | Dosyaları değişime uğrama zamanlarına göre sıralar |
| -r | Sıralamayı ters yönde yapar |
| -R | Alt dizinlerin içerikleri ile birlikte tüm dosyaları listeler |
Devamı gelecek…
Yorum yapın şimdiye kadar
Yorum yapın