---
title: 'Gezinme Komutları'
source: 'https://academia.sh/tr/kurslar/linuxa-giris/gezinme-komutlari'
course: "Linux'a Giriş"
language: tr
updated: '2026-08-17T18:09:56+00:00'
license: 'CC BY-SA 4.0'
---

# Gezinme Komutları

Çalışma dizini değiştirme, listeleme çıktısının sütunlarının tek tek okunması, sıralama ölçütleri ve dosya üstverisinin tamamına erişim.

Önceki konuda `proje/` ağacı kuruldu ve içine bir betik yerleştirildi. Ağaç üzerinde
çalışmadan önce onu **okuyabilmek** gerekir: hangi dosyalar var, ne kadar yer kaplıyorlar,
en son ne zaman değiştiler, kime aitler.

Bu ders listeleme çıktısını sütun sütun çözer. Çıktının okunması, kursun geri kalanında
yapılan her işlemin doğrulama aracıdır; kopyalamanın, taşımanın, bağ kurmanın ve izin
değiştirmenin sonucu hep aynı çıktıda görülecektir.

## Çalışma Dizini Değiştirme

`cd` komutu çalışma dizinini değiştirir ve dört yaygın biçimde kullanılır:

| Komut | Etki |
|---|---|
| `cd yol` | Belirtilen dizine geçer |
| `cd` | Ev dizinine döner (argümansız) |
| `cd ..` | Bir üst dizine çıkar |
| `cd -` | Bir önceki dizine döner ve adını yazdırır |

Argümansız `cd`, ev dizinini `HOME` ortam değişkeninden okur. Bu, komut yolu dersinde
kurulan ortam kavramının doğrudan bir kullanımıdır: ev dizini kabuğa gömülü bir değer
değil, ortamdan gelen bir ayardır.

## Varsayılan Listeleme

`ls` komutu argümansız çağrıldığında bulunulan dizini listeler:

```
$ cd proje
$ ls
arsiv  belge  betik  veri
```

Üç davranış varsayılandır: adlar sıralanır, nokta ile başlayanlar gösterilmez ve çıktı
terminal genişliğine göre sütunlara bölünür.

Üçüncüsü, komutun çıktısının nereye gittiğine bağlıdır:

```
$ ls
arsiv  belge  betik  veri
$ ls | cat
arsiv
belge
betik
veri
```

Aynı komut, çıktısı bir terminale gidiyorsa sütunlu, başka bir programa gidiyorsa satır
başına tek ad biçiminde yazar. Bunun nedeni, sütun genişliğinin terminal dışında anlamsız
olmasıdır. Davranış, çıktıyı işleyen betikler için önemlidir: sütunlu biçimi ayrıştırmaya
çalışmak gereksizdir, çünkü betik zaten satır başına tek ad alır.

Nokta ile başlayan adları da görmek için `-a` verilir:

```
$ ls -a betik
.  ..  ozet.sh
```

## Uzun Listeleme

`-l` seçeneği her dosya için tek satırlık bir üstveri özeti verir:

```
$ ls -l
total 16
drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:47 arsiv
drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:47 belge
drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:49 betik
drwxr-xr-x 4 ogrenci ogrenci 4096 Jul 26 18:47 veri
```

Satırlar yedi alandan oluşur:

**1. Tür ve izinler.** İlk karakter dosya türüdür: `-` sıradan dosya, `d` dizin, `l`
sembolik bağ, `c` karakter aygıtı, `b` blok aygıtı. Kalan dokuz karakter izin bitleridir
ve izinler konusunda ayrıntılı olarak çözülecektir.

**2. Bağlantı sayısı.** Bu dosyaya işaret eden dizin girdisi sayısı. Dizinlerde bu sayı
2'den başlar ve her alt dizin bir artırır: `veri` dizininin `4` değeri, içindeki iki alt
dizinden gelir. Sayının ne anlama geldiği bağlantılar dersinde tam olarak açıklanacaktır.

**3. Sahip kullanıcı.** Dosyanın sahibi.

**4. Sahip grup.** Dosyanın ait olduğu grup.

**5. Boyut.** Sıradan dosyalarda bayt cinsinden içerik boyutu; dizinlerde dizin girdisi
tablosunun kapladığı yer — içindeki dosyaların toplam boyutu **değil**.

**6. Değişiklik zamanı.** İçeriğin son değiştirildiği an. Altı aydan eskiyse saat yerine
yıl gösterilir.

**7. Ad.**

İlk satırdaki `total 16` değeri, listelenen dosyaların kapladığı **blok** sayısıdır;
dosya sayısı veya bayt toplamı değildir. Blok boyutu araca ve sisteme göre değişir,
bu yüzden bu sayı sistemler arasında karşılaştırılmaz.

Boyut sütunu bayt cinsindendir ve büyük dosyalarda okunması zorlaşır:

```
$ ls -l /usr/bin/bash
-rwxr-xr-x 1 root root 1543048 Mar 31  2024 /usr/bin/bash
$ ls -lh /usr/bin/bash
-rwxr-xr-x 1 root root 1.5M Mar 31  2024 /usr/bin/bash
```

`-h` seçeneği boyutu okunabilir birimlere çevirir. Çevrim yuvarlama yapar; kesin bayt
değeri gerektiğinde `-h` kullanılmaz.

## Dizinin Kendisini Listelemek

Bir dizin adı verildiğinde `ls` dizinin **içeriğini** listeler. Dizinin kendi satırını
görmek için `-d` gerekir:

```
$ ls -ld veri
drwxr-xr-x 4 ogrenci ogrenci 4096 Jul 26 18:47 veri
```

Bu ayrım, izin ve sahiplik komutlarında sonucun doğrulanması için sürekli kullanılır: bir
dizinin izinleri değiştirildiğinde bakılması gereken satır, içindeki dosyalarınki değil
dizinin kendisininkidir.

Birden çok yol verildiğinde çıktı başlıklarla bölümlenir:

```
$ ls -li betik veri
betik:
total 4
21931 -rwxr-xr-x 1 ogrenci ogrenci 139 Jul 26 18:49 ozet.sh

veri:
total 8
21908 drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:47 ham
21909 drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:47 islenmis
```

`-i` seçeneği en sola bir sayı ekler: **düğüm numarası (inode number)**. Bu sayı, dosyanın
üstverisini tutan yapının dosya sistemi içindeki kimliğidir. Adın değil, dosyanın
kimliğidir — bu ayrım bağlantılar dersinin tamamının dayanağıdır.

## Sıralama

Varsayılan sıralama ada göredir. Değişiklik zamanına göre sıralamak için `-t` kullanılır:

```
$ ls -lt
total 16
drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:49 betik
drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:47 arsiv
drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:47 belge
drwxr-xr-x 4 ogrenci ogrenci 4096 Jul 26 18:47 veri
$ ls -ltr
total 16
drwxr-xr-x 4 ogrenci ogrenci 4096 Jul 26 18:47 veri
drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:47 belge
drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:47 arsiv
drwxr-xr-x 2 ogrenci ogrenci 4096 Jul 26 18:49 betik
```

`-t` en yeniyi başa alır; `-r` sırayı ters çevirir. `-ltr` bileşimi en yeniyi **sona**
alır ve uzun listelerde en çok kullanılan biçimdir: son değişen dosya, ekranı kaydırmaya
gerek kalmadan en altta görünür.

Eşit zamanlı dosyalarda ikincil ölçüt addır; bu, çıktının aynı girdi için kararlı
kalmasını sağlar.

Diğer sık kullanılan sıralamalar `-S` (boyuta göre, büyükten küçüğe) ve `-X` (uzantıya
göre) seçenekleridir.

## Üstverinin Tamamı

`ls -l` üstverinin bir özetidir. Tamamı `stat` ile okunur:

```
$ stat betik/ozet.sh
  File: betik/ozet.sh
  Size: 139       	Blocks: 8          IO Block: 4096   regular file
Device: 0,71	Inode: 21931       Links: 1
Access: (0755/-rwxr-xr-x)  Uid: ( 1001/ ogrenci)   Gid: ( 1001/ ogrenci)
Access: 2026-07-26 18:49:26.461777000 +0000
Modify: 2026-07-26 18:49:26.458777000 +0000
Change: 2026-07-26 18:49:26.460777000 +0000
 Birth: 2026-07-26 18:49:26.458777000 +0000
```

Çıktı, `ls -l`'de gizli kalan üç bilgiyi açar.

**İzinler iki biçimde birden verilir:** `0755` ve `-rwxr-xr-x`. Aynı değerin sekizlik ve
harfli gösterimleridir; aralarındaki dönüşüm izin bitleri dersinin konusudur.

**Kullanıcı ve grup sayısal kimlikleriyle birlikte gösterilir:** `1001/ogrenci`. Sistemin
sakladığı değer sayıdır; ad, bir eşleme dosyasından çözülür.

**Üç ayrı zaman damgası vardır:**

- **Access** — içeriğin son okunduğu an
- **Modify** — içeriğin son değiştirildiği an; `ls -l` bu değeri gösterir
- **Change** — üstverinin son değiştiği an; izin veya sahiplik değişikliği bunu günceller,
  içeriği değiştirmez

Üçüncüsü sık karıştırılır. Bir dosyanın izinleri değiştirildiğinde `ls -lt` sıralaması
değişmez, çünkü değişen zaman `Modify` değil `Change`'dir. Bu ayrım, "dosyaya
dokunulmuş mu" sorusunun yanıtını değiştirir.

`Blocks` alanı ayrılan blok sayısını verir ve `Size` ile orantılı olmak zorunda değildir:
139 baytlık bir dosya, blok boyutu nedeniyle diskte daha fazla yer kaplar.

`stat` POSIX'te tanımlı değildir ve çıktı biçimi araç ailesine göre değişir. Biçimlendirme
seçeneği GNU araçlarında `-c`, BSD araçlarında `-f`'dir; taşınabilir olması gereken
betiklerde `stat` yerine `ls` çıktısı veya `find` ölçütleri tercih edilir.

## Özet

- `ls` varsayılan olarak adları sıralar, gizli dosyaları atlar ve çıktısı terminale
  gidiyorsa sütunlara böler.
- Uzun listeleme yedi alan verir: tür ve izinler, bağlantı sayısı, sahip, grup, boyut,
  değişiklik zamanı, ad.
- Dizinlerde boyut sütunu dizin girdisi tablosunun büyüklüğüdür; içeriğin toplamı değildir.
- `-d` dizinin kendi satırını, `-i` düğüm numarasını gösterir; düğüm numarası adın değil
  dosyanın kimliğidir.
- `-t` değişiklik zamanına göre sıralar, `-r` ters çevirir; `-ltr` en yeniyi sona alır.
- Üstveride üç zaman damgası vardır: erişim, içerik değişikliği ve üstveri değişikliği.

## Sonraki Adım

Ağaç okunabiliyor ama hâlâ boş: `ham` dizininde tek bir ölçüm dosyası yok. Sonraki ders
dosya oluşturma, kopyalama ve taşıma işlemlerini ele alır; bu üç işlemin dosya sistemi
düzeyinde neden bambaşka maliyetlere sahip olduğunu ve hangi durumda sessizce veri
kaybettirdiklerini gösterir.
