Açık Kaynak İşletim Sistemleri

4 - Komut Satırı ve Temel Komutlar

Emre Can Yılmaz

Ondokuz Mayıs Üniversitesi

2026

İçerik

  • Terminal (Konsol) Uygulaması
  • Kabuk (Shell)
  • Komut Yapısı ve Yardım Alma
  • Dosya Sistemi İçinde Gezinme
  • Temel Komutlar
  • Ortam Değişkenleri ve Bağlantılar
  • Bilgi Alma Komutları

Kabuk (Shell)

Kullanıcıların işletim sistemi ile etkileşebileceği iki temel ortam vardır:

  • Grafik masaüstü
  • Komut satırı

Komut satırında, yazdığımız komutları yorumlayıp çalıştıran programa kabuk (shell) denir.

Kabuk, komutları yorumlar; işletim sisteminin çalıştırma mekanizmasına iletir ve sonucu bize gösterir.

Kabuk Programı

En yaygın kabuk programı Bash (Bourne Again Shell) olmakla birlikte farklı kabuklar da vardır:

  • sh, ksh, csh, zsh, fish

Araştırma sorusu: Kabuk programı nasıl değiştirilir?

Terminal (Konsol)

Terminal, komutları yazdığımız arayüzdür.

  • Terminal, kabuğa komut girmemizi sağlar.
  • Kabuk, komutu yorumlar ve çalıştırır.
  • Sonuç terminal ekranına yansır.

Örnek terminal uygulamaları: gnome-terminal, alacritty, konsole, xterm, ghostty

Komut Satırı Örneği (bash kabuğu)

emrecan@ubuntu:~$
  • emrecan: Kullanıcı adı
  • @: ayraç
  • ubuntu: Bilgisayar adı
  • :~ : Bulunduğu dizin (burada ev dizini)
  • $: Yetki işareti

Not

  • $ genellikle normal kullanıcıyı, # genellikle yönetici kullanıcıyı ifade eder.
  • Komut satırı görünümü özelleştirilebilir; her sistemde aynı görünmeyebilir.

Araştırma sorusu: Komut satırı (prompt) nasıl özelleştirilebilir?

Terminal Neden Kullanılır?

Terminalin güçlü olduğu tipik durumlar:

  • Tekrarlayan işleri hızlı yapmak
  • Uzaktan bağlanıp yönetmek (grafik arayüz olmadan)
  • Sorun giderme (grafik arayüz açılmasa bile)
  • Komutları birleştirerek daha fazla iş yapmak
  • Otomatikleştirme (komutları dosyaya yazıp çalıştırma)

Ubuntu’da Terminal Nasıl Açılır?

  • Ctrl+Alt+T
  • Uygulamalar menüsünde “Terminal” araması
  • GNOME aktiviteler ekranında “terminal” araması
  • Bazı masaüstlerinde sağ tık → “Terminal’i aç”

Komut Yapısı

Genel biçim:

komut_ismi seçenekler argümanlar

Örnek:

ls -al /etc
  • ls: komut
  • -al: seçenekler (parametreler)
  • /etc: argüman (hedef)

Seçenekler genellikle - veya -- ile başlar:

  • Kısa seçenek: -a, -l (birleştirilebilir: -la)
  • Uzun seçenek: --all, --long

Yardım Alma

Komutların nasıl kullanıldığını öğrenmenin en güvenilir yolu yardım sayfalarıdır.

  • man komut: detaylı yardım
  • komut --help: hızlı özet
  • Bazı durumlarda help komut (özellikle kabuk içi komutlarda)

Örnekler:

man ls
ls --help
help cd

Komut Geçmişi

  • Yazdığınız komutlar genellikle ~/.bash_history dosyasında tutulur.
  • Yukarı/aşağı ok tuşları ile geçmişteki komutlara erişebilirsiniz.
  • Ctrl + R ile geçmişte arama yapabilirsiniz.

Dene:

history

Meraklılar için: fzf (İsteğe bağlı)

Komut geçmişinde ve dosyalarda arama işini kolaylaştıran bir araçtır.

Bu bölüm zorunlu değil; temel komutlar oturduktan sonra faydalı olur.

Temel Komutlar

Bu bölümde amaç: terminalde dosya sistemi içinde gezinebilmek ve temel işlemleri yapabilmek.

pwd (print working directory)

Bulunulan dizinin yolunu verir.

pwd

Örnek çıktı:

/home/emrecan

cd (change directory)

Dizinler arasında geçiş yapmak için kullanılır.

cd /var/log
pwd

Örnek çıktı:

/var/log

Mutlak Yol

Yol / ile başlıyorsa, kökten itibaren yazılmıştır.

Örnek:

/etc
/home/emrecan
/usr/local/bin
cd /usr
cd /etc

Göreceli Yol (Bağıl Yol)

Yol / ile başlamıyorsa, bulunulan dizine göre yorumlanır.

cd /usr
cd local/bin
pwd

Örnek çıktı:

/usr/local/bin

Özel Dizin Gösterimleri

Gösterim Temsil ettiği
. Mevcut dizin
.. Üst dizin
~ Ev dizini
- Bir önceki dizin

Özel Gösterimleri Deneyelim

cd /usr/local/bin
pwd
/usr/local/bin

cd ..
pwd
/usr/local

cd .
pwd
/usr/local

cd ~
pwd
/home/emrecan

Not

cd . dizin değiştirmez; bu yüzden pwd çıktısı aynı kalır.

Diğer kullanıcıların ev dizinleri

  • Başka bir kullanıcının ev dizinine gitmek için ~kullanıcı gösterimi kullanılabilir.
cd ~emrecan
pwd
/home/emrecan

Alıştırmalar

  1.    cd /usr/local/bin
       cd ../../local
       pwd
       ???
  2.    cd /bin
       cd ../usr/share/zoneinfo
       pwd
       ???
  3.    cd ~/../../usr/local
       pwd
       ???

ls

Dizin içeriğini listeler.

  • ls -a: gizli dosyaları da gösterir (adı . ile başlayanlar)
  • ls -l: detaylı liste (izinler, sahip, boyut, tarih)
  • ls -h: boyutları daha okunaklı gösterir (genellikle -l ile birlikte)

Örnek:

ls -alih

Not

ls -a çıktısında . ve .. görünür.

Dosya türleri (Kısa)

ls -l çıktısında en soldaki karakter dosya türünü gösterir.

d  dizin
-  normal dosya
l  kısayol (sembolik bağlantı)

Ek bilgi (şimdilik yeterli)

Bazı sistemlerde p (pipe) ve s gibi türler de görülebilir. Detayları ileride gerektiğinde ele alırız.

mkdir

Dizin oluşturur.

mkdir foo
mkdir bar baz
mkdir -p dizin1/dizin2/dizin3

touch

  • Boş bir dosya oluşturur.
  • Var olan dosyanın zaman bilgisini güncelleyebilir.
touch /tmp/benioku

echo

Metin yazdırır.

echo Selam

Çıktıyı dosyaya yazma (Kısa)

> işareti, komut çıktısını dosyaya yazar.

echo Selam > selam.txt
cat selam.txt

>> aynı dosyanın sonuna ekler.

echo Tekrar >> selam.txt
cat selam.txt

cat

Dosya içeriğini ekrana yazar.

cat selam.txt

Birden fazla dosyayı da okuyabilir:

cat selam1.txt selam2.txt

less (Önerilir)

cat kısa dosyalarda iyidir. Uzun dosyalarda less daha kullanışlıdır.

less /etc/passwd

Çıkış: q

cp

Dosya ve dizin kopyalar.

Biçim:

cp kaynak hedef
  • Üzerine yazma riski vardır.
  • -i ile sorarak kopyalar (önerilir).
cp -i eski_dosya yeni_dosya

Dizin kopyalamak için:

cp -r eski_dizin /tmp/yeni_dizin

mv

Dosya veya dizin taşır / adını değiştirir.

mv eski_ad yeni_ad
mv dosya /tmp

Üzerine yazma riski için:

mv -i dosya hedef

Çalışma sorusu: mv ile dosya adını değiştirince inode numarası değişir mi?

rm (Dikkat)

Dosya/dizin siler.

Uyarı

Bu komut “çöp kutusuna” göndermez; doğrudan siler.

Önemli seçenekler:

  • -i: silmeden önce sorar
  • -r: dizinleri silmek için gerekir
  • -f: zorlar (çok dikkatli)

Örnek:

rm -i silinecek_dosya.txt
rm -r silinecek_dizin

find (Temel)

Dosya/dizin aramak için kullanılır.

Biçim:

find dizin seçenekler

En çok kullanılanlar:

  • -name: isimle arama
  • -type: tür (f dosya, d dizin)
  • -size: boyuta göre arama

Örnekler:

find /etc -name "local*" -type f
find /etc -name "local*" -type d

find örnekleri

  • /bin altında 1 MB’tan büyük dosyaları bul:
find /bin -type f -size +1M
  • Ev dizininde son 1 gün içinde değişen dosyaları bul:
find ~ -type f -mtime -1

Bağlantılar Nerede İşe Yarar?

Bir veriyi başka yere taşıyıp eski yolu korumak istediğinizde işe yarar.

Örnek fikir:

ln -s /mnt/yeni_disk/data /var/lib/data

Böylece programlar /var/lib/data yolunu kullanmaya devam edebilir.

Ortam Değişkenleri (Kısa)

Bazı bilgileri kabuk “değişken” olarak taşır.

Örnek:

echo $SHELL
echo $HOME
echo $USER

Tüm ortam değişkenlerini görmek için:

env

PATH (Kısa)

PATH, komut yazınca sistemin “nerelerde arayacağını” gösteren liste gibi düşünülebilir.

Örnek:

echo $PATH

Not

Bu konuyu ilerleyen haftalarda daha rahat genişleteceğiz. Şimdilik “komut bulunamazsa nerelerde arıyor?” sorusuna cevap olarak düşünmek yeterli.

Çalışma Sorusu

  • .bashrc dosyası ne işe yarar?
  • PATH’e yeni bir dizin nasıl eklenir ve bu değişiklik nasıl kalıcı hale getirilir?

(İpucu: önce dosyayı sadece görüntüleyin)

cat ~/.bashrc

Bilgi Alma Komutları

Bu komutlar “sistem hakkında hızlı bilgi” verir. Çıktılar sistemden sisteme değişebilir; bu normaldir.

whoami / hostname

whoami
hostname

uname

Çekirdek hakkında bilgi verir.

uname -a

Dağıtım Bilgisi

Bazı sistemlerde:

lsb_release -a

Eğer lsb_release yoksa, genelde şu dosya vardır:

cat /etc/os-release

date / uptime

date
uptime

Alıştırma: Bugünün tarihini GG.AA.YYYY formatında yazdırmayı deneyin (man date).

which

Bir komutun tam yolunu gösterir.

which date

Alıştırma: ls programını ev dizini altına listele adıyla kopyalayın ve çalıştırın.

cp "$(which ls)" ~/listele
chmod +x ~/listele
~/listele ~

Bilgi Alma Komutları

Komut 1 cümlede ne yapar?
df Disk bölümlerinin doluluk durumunu gösterir.
du Dosya ve dizinlerin diskte kapladığı alanı gösterir.
free RAM ve swap kullanımının özetini verir.
lspci PCI aygıtlarını listeler (ekran kartı, ağ kartı gibi).
dmidecode BIOS/anakart gibi donanım bilgilerini gösterir (çoğu zaman sudo gerekir).

Komut Referansları

  • explainshell.com — Komutları parça parça açıklar
  • cheat.sh — Hızlı kopya kağıtları

Sorular?