Linux Komutları ve Kullanımları
Yukarı aşağı tuşu bash shell’inde en son yazmış olduğunuz komutları getirmeye yarar. Eğer bir yerde yazı yazabiliyor ve çıkmak istiyorsanız exit yazarak oradan çıkabilirsiniz. Eğer yazı yazamıyorsanız oradan çıkmak istediğinizde q yada CTRL + C tuşu ile çıkış yapabilirsiniz.
Linux’ta terminal üzerinde kullanmış olduğumuz shell ilk açıldığında aşağıdaki gibi görünür.
[eemanet@centos3 ~]$
eemanet yazan kısım shell’e bağlı olduğumuz username’i (kullanıcı adını) belirtir.
@ kısımından sonra centos3 yazan yer ise bağlı olunan bilgisayarın ismini bize verir.
$ işaret ise bize normal bir kullanıcı olduğumuzu belirtir.
[root@centos3 ~]#
Burada # işareti bize kullanış olduğumuz hesabın root hesabına yani en sistem yöneticisi hesabında işlem yaptığımızın bilgisini vermektedir.
pwd (Print name of current/working directory)
Bu komut ile Linux sistemde bulunduğumuz dizinin adını bize ekrana yazdırarak gösterir. Bash shell’inde ~(tilda) işareti bize ev dizininde olduğumuzu gösterir.
[eemanet@centos3 ~]$ pwd
/home/eemanet
Burada sh shell’inde özellikle pwd komutu Bash shell’ine kıyasla daha sıkça kullanılır. Bash shell’inde bulunduğumuz dizinin adını bize direk gösterirken sh shell’inde bu durumu bize göstermez.
sh-4.2$ pwd
/home/eemanet
cd (Change Directory)
Dizin değiştirmeye yarayan Linux dünyasında sıklıkla kullanılan komutların başında gelmektedir.
[eemanet@centos3 ~]$ cd DERS/
[eemanet@centos3 DERS]$ cd ..
[eemanet@centos3 ~]$
Bir dizine gitmek istediğimizde cd gidilmek istenilen dizin yazılarak o dizin altına gidilebilir. Bulunan dizinden bir üst dizine gidilmek isteniliyorsa cd .. komutunu kullanarak bir üst dizine gidebilmemiz mümkündür.
[eemanet@centos3 ~]$ cd ../../
[eemanet@centos3 /]$ pwd
/
Eğer daha fazla üst dizine çıkmak istiyorsak o kadar ../ yazamamız yeterlidir. Biz yukarıdaki örnekte iki üst dizine çıkarak / (kök) dizine ulaştık.
[eemanet@centos3 /]$ cd
[eemanet@centos3 ~]$
Sadece cd komutu varsayılan olarak sizi ev dizininize gönderir.
ls (list directory contents)
Bulunduğumuz dizindeki dosya ve dizinleri listelemeye yarayan komuttur.
Sadece ls komutu dosya ve dizinleri yan yana basit bir şekilde sıralarken yanınaya yazacağımız -l parametresi daha detaylı bir listeme yapmaya yarar.
[root@centos3 ~]# ls
anaconda-ks.cfg deneme dosyası initial-setup-ks.cfg
[root@centos3 ~]#ls -l
toplam 8
-rw — — — -. 1 root root 2140 Kas 8 17:34 anaconda-ks.cfg
-rw-r — r — . 1 root root 0 Kas 14 14:51 deneme
-rw-r — r — . 1 root root 0 Kas 14 14:51 dosyası
-rw-r — r — . 1 root root 2188 Kas 8 17:36 initial-setup-ks.cfg
[root@centos3 ~]#
touch
Bu komut bize bir dosya oluşturmamızı sağlar. Aşağıdaki örnekte deneme dosyası isiminde bir dosya oluşturmaya çalıştık fakat bize deneme diye ayrı bir dosya dosyası diye ayrı bir dosya oluşturdu. Bunun nedeni Linux’a oluşturmamız gereken dosyanın bir isminin bitişik olduğunu bildirmemiz gereken kaçış karakterini kullanmadığımızdan dolayı oluştu. Dosya içerisinde boşluk karakteri kullanacak isek bunu kaçış karakteri olan \ ile Linux’a söylememiz gerekmekte. \ ekleyerek yapılan deneme dosyası tek bir dosya şeklinde oluştu.
[root@centos3 ~]# touch deneme dosyası
[root@centos3 ~]# ls -lrt
toplam 8
-rw-------. 1 root root 2140 Kas 8 17:34 anaconda-ks.cfg
-rw-r--r--. 1 root root 2188 Kas 8 17:36 initial-setup-ks.cfg
-rw-r--r--. 1 root root 0 Kas 14 14:51 dosyası
-rw-r--r--. 1 root root 0 Kas 14 14:51 deneme
[root@centos3 ~]# touch deneme\ dosyası
[root@centos3 ~]# ls -lrt
toplam 8
-rw-------. 1 root root 2140 Kas 8 17:34 anaconda-ks.cfg
-rw-r--r--. 1 root root 2188 Kas 8 17:36 initial-setup-ks.cfg
-rw-r--r--. 1 root root 0 Kas 14 14:51 dosyası
-rw-r--r--. 1 root root 0 Kas 14 14:51 deneme
-rw-r--r--. 1 root root 0 Kas 14 14:58 deneme dosyası
rm (remove files or directories)
Bu komut ile dosya yada dizin(klasör) silebiliriz. Boş bir dosyayı silmek istediğimizde Linux bize uyarı verdi. Eğer dosyayı silmeye direk zorlamak istersek force (-f) parametresini kullanmamız gerekmektedir.
[root@centos3 ~]# rm deneme
rm: normal boş dosya `deneme’ silinsin mi?
[root@centos3 ~]# rm -f deneme
[root@centos3 ~]# ls -l
toplam 8
-rw — — — -. 1 root root 2140 Kas 8 17:34 anaconda-ks.cfg
-rw-r — r — . 1 root root 0 Kas 14 14:58 change
-rw-r — r — . 1 root root 0 Kas 14 14:58 deneme dosyası
-rw-r — r — . 1 root root 0 Kas 14 14:51 dosyası
-rw-r — r — . 1 root root 0 Kas 14 14:58 file
-rw-r — r — . 1 root root 2188 Kas 8 17:36 initial-setup-ks.cfg
-rw-r — r — . 1 root root 0 Kas 14 14:58 timestamps
Eğer dizin silmek istiyorsak sadece rm komutu bize yeterli gelmeyecektir. Dizin silmek için rm -r komutunu kullanamız gerekecektir.
[root@centos3 ~]# ls
anaconda-ks.cfg change deneme dosyası DERSLER dosyası file initial-setup-ks.cfg timestamps
[root@centos3 ~]# rm DERSLER/
rm: `DERSLER/’ silinemedi: Bir dizin
[root@centos3 ~]# rm -r DERSLER/
rm: dizin `DERSLER/’ silinsin mi?
[root@centos3 ~]# rm -rf DERSLER/
[root@centos3 ~]# ls
anaconda-ks.cfg change deneme dosyası dosyası file initial-setup-ks.cfg timestamps
DERSLER dizinini silmek istediğimizde gördüğünüz gibi sadece rm komutu tek başına yeterli olmadı. Çünkü rm komutu sadece dosya sileceğimiz zaman kullanmamız gereken komutken; dizin sileceğimiz zaman -r parametresini de kullanmamız gerekti. Dizin boş olduğu için silmeye zorlamak için de -rf parametresini birlikte kullandık.
history
Bu komut shell üzerinde geçmişte çalıştırmış olduğumuz komutları bize listeler.
[root@centos3 ~]# history
1 touch deneme dosyası
2 ls -lrt
3 mkdir DERSLER
4 history
[root@centos3 ~]#
Geçmişte kullandığımız komutları history’in belleğinden temizlemek için
history -c
komutunu kullanabiliriz.
Eğer yazılan komutların history belleğinde gözükmemesini istiyorsanız komutun başına boşluk yazarak o komutun history listesine girmemesini sağlayabilirsiniz.
cat
Bir dosyanın içeriğini görüntüler, ekrana basar yada bir başka kaynağa aktarır. iller dosyasının içeriğini terminale yazdırmak istersek;
[root@centos3 ~]# cat iller
ankara, izmir, istanbul
cat komutu ile n tane dosyayı birleştirebiliriz.
more
Eğer bu tür uzunca bir dosyaya yavaş yavaş göz atmak istiyor isek more
komutunu kullanabiliriz. Yukarı-aşağı tuşları ile satırlar arasında gezebilirsiniz. Boşluk tuşuna basarak da sayfa sayfa atlamanız mümkün.
[eemanet@centos3 DERS]$ more uzun.txt
echo
Bu komut ekrana yazı yazmaya yarar.
[root@centos3 ~]# echo Pengueni Seviyorum
Pengueni Seviyorum
echo komutunu yeni bir dosya oluşturmak içinde kullanabiliriz. mesaj dosyası içerisine deneme yazmak istersek aşağıdaki gibi bir komut kullanabiliriz.
[root@centos3 ~]# echo deneme > mesaj
[root@centos3 ~]# cat mesaj
deneme
[root@centos3 ~]#
Eğer > işareti ile tekrar aynı dosya içerisine yeni bir ekleme yapmak istersek bu sefer mesaj dosyası içerisindeki deneme yazısını silecektir. Bunun için mesaj dosyasının içerisine yeni bir veri girişi yapmak istersek >> parametresini kullanmalıyız.
[root@centos3 ~]# echo merhaba >> mesaj
[root@centos3 ~]# cat mesaj
deneme
merhaba
[root@centos3 ~]#
alias
Linux, kullanıcılarına istedikleri isim ile iş yapabilen komutlar yaratmaya izin vermektedir. alias komutu ile istediğimiz isimde işlerimizi kolaylaştıran komutlar üretebiliriz. Örneğin klavyeden d tuşuna bastığımızda ekrana merhaba linux yazdırmak için aşağıdaki gibi bir alias tanımlaması kullanabiliriz.
[root@centos3 ~]# alias d='echo merhaba linux'
[root@centos3 ~]# d
merhaba linux
[root@centos3 ~]#
mkdir (Make Directory)
Yeni bir dizin(klasör) oluşturmaya yarar.
[root@centos3 ~]# mkdir TEST
[root@centos3 ~]# ls
anaconda-ks.cfg change deneme dosyası DERSLER dosyası file initial-setup-ks.cfg TEST timestamps
TEST dizinin içerisine EMRE dizini oluşturmak istersem;
[root@centos3 ~]# mkdir TEST/EMRE/
[root@centos3 ~]# tree
.
├── anaconda-ks.cfg
├── bellek
├── change
├── DERSLER
├── file
├── iller
├── initial-setup-ks.cfg
├── kullanim.txt
├── mesaj
├── TEST
│ └── EMRE
└── timestamps
free
Belleklerin (RAM, SWAP vs.) kullanım bilgisini ekrana yazar.
[root@centos3 ~]# free
total used free shared buff/cache available
Mem: 7990048 1035156 4574068 29020 2380824 6636636
Swap: 6291452 0 6291452
[root@centos3 ~]#
Eğer bellek bilgilerini bir dosyaya yazmak istersek; free > bellek komutu ile bellek isimli dosya içerisine bellekte ne kadar kullanım olduğunu bir dosya içine yazdırabiliriz.
[root@centos3 ~]# free > bellek
[root@centos3 ~]# cat bellek
total used free shared buff/cache available
Mem: 7990048 1035540 4573680 29024 2380828 6636248
Swap: 6291452 0 6291452
[root@centos3 ~]#
df (Disk Free)
Hard disklerinizi, hard disklerinizin partion’larını gösterir.
du (Disk Usage)
Dosya ve dizinlerin kapladıkları alanları görmek için kullanılır. Örneğin ev dizinimindeki dosya ve klasörlerin ne kadar alan kapladığını görmek istersek;
[root@centos3 ~]# du ~
4 /root/.cache/dconf
4 /root/.cache/abrt
8 /root/.cache
4 /root/.dbus/session-bus
4 /root/.dbus
0 /root/.config/ibus/bus
0 /root/.config/ibus
0 /root/.config/abrt
4 /root/.config/htop
8 /root/.config
0 /root/.pki/nssdb
0 /root/.pki
0 /root/.local/share
0 /root/.local
0 /root/DERSLER
0 /root/TEST
84 /root
[root@centos3 ~]#
mv (Move)
Bir dosya yada dizini başka bir yere taşımaya yarar.
[root@centos3 ~]# mv bellek TEST/EMRE/
[root@centos3 ~]# cd TEST/EMRE/
[root@centos3 EMRE]# ls
bellek
[root@centos3 EMRE]#
whoami
Kullanmış olduğumuz kullanıcının adını görüntülemek için kullanılır.
sh-4.2# whoami
root