💻 tmux Kullanıcı Rehberi

Hazırlayan: [kazakherif]
Tarih: 2025-07-13
Amaç: tmux kullanarak terminalde daha verimli çalışmak ve komut satırı deneyimini ileri düzeye taşımak için en önemli komutları ve kısayolları paylaşmak.


1️⃣ Yeni tmux Oturumu Başlatma

Açıklama:

tmux komutu, terminalde yeni bir oturum (session) başlatır. Başlattığın oturumda birden fazla pencere (window) ve panel (pane) açabilir, bunlar arasında geçiş yapabilirsin.
tmux, özellikle SSH ile bağlandığın uzak sunucularda çalışırken bağlantın koptuğunda bile işlemlerini kaybetmemeni sağlar. Yeni bir oturum başlattığında, terminalinde tmux’un varsayılan durum çubuğu (status bar) görünür.


Temel Komut:

Yeni, isimsiz bir tmux oturumu başlatmak için:

tmux

İsimli Oturum Başlatmak:

Birden fazla oturum yönetiyorsan, oturuma isim vermek daha kolaydır:

tmux new -s benimoturumum

Detaylı Örnek Senaryo:

Örneğin uzak bir Linux sunucusuna SSH ile bağlandın. Bir script çalıştıracaksın ama bağlantı kesilirse script yarıda kalmasın istiyorsun. Şöyle yapabilirsin:

tmux new -s backup

Sonra komutunu çalıştır:

rsync -avz /data/ remotehost:/backup/

Bağlantın kopsa bile, tekrar SSH ile bağlanıp aşağıdaki komutla kaldığın yerden devam edebilirsin:

tmux attach -t backup

Bu sayede çalışan işlem kesintiye uğramaz.


Kısayol:

tmux içindeyken oturumu arka plana atmak için (detach):

Ctrl+b d

Sonra tekrar bağlanabilirsin:

tmux attach

2️⃣ Aktif tmux Oturumlarını Listeleme

Açıklama:

tmux çalışırken, bazen hangi oturumların açık olduğunu görmek istersin. tmux ls veya tmux list-sessions komutu, sistemdeki tüm oturumları listeler.


Temel Komut:

tmux ls

veya

tmux list-sessions

Örnek Çıktı:

0: 1 windows (created Sun Jul 13 15:00:42 2025) [158x42]
backup: 2 windows (created Sun Jul 13 14:40:01 2025) [158x42]

Bu örnekte:

  • “0” ve “backup” adında iki oturum var.
  • Her birinin kaç pencereye sahip olduğu yazıyor.

Detaylı Örnek Senaryo:

Birden fazla iş yürütüyorsan:

tmux new -s build

ve

tmux new -s deploy

Sonra kontrol edersin:

tmux ls

3️⃣ Var Olan tmux Oturumuna Bağlanma

Açıklama:

Var olan bir tmux oturumunu devam ettirmek için attach komutu kullanılır. Özellikle uzak sunucuda kopan SSH bağlantıları sonrası çok işe yarar.


Temel Komut:

tmux attach -t oturumadi

Örnek Senaryo:

Önceden açtığın bir oturuma dönmek:

tmux attach -t backup

Hiç oturum ismi yazmazsan en son detach ettiğin oturuma bağlanırsın:

tmux attach

Not:

Bağlanmak istediğin oturum adını bilmiyorsan önce listele:

tmux ls

4️⃣ Yeni Pencere (Window) Açma

Açıklama:

Bir oturumda birden fazla pencere (window) açabilirsin. Her pencere tamamen bağımsız bir terminal ortamı sunar. Pencereler tıpkı sekmeler gibidir.


Temel Kısayol:

Ctrl+b c

Bu kısayol:

  • Yeni bir pencere yaratır.
  • Yeni pencere numarası, mevcut en büyük numaraya +1 olur.

Detaylı Örnek Senaryo:

Örneğin:

    1. pencerede nginx logları izliyorsun
    1. pencerede kod düzenliyorsun

Yeni pencere açmak için:

Ctrl+b c

Not:

Yeni pencereye otomatik olarak geçersin. İstersen eski pencereye geri dönebilirsin:

Ctrl+b p

5️⃣ Pencereler Arasında Geçiş Yapma

Açıklama:

Bir oturumda birden fazla pencere (window) varsa aralarında hızlıca geçiş yapmak çok kullanışlıdır. Özellikle log izlerken veya kod yazarken başka terminal komutlarına bakman gerekirse hız kazandırır.


Temel Kısayollar:

  • Sonraki pencereye geç:

    Ctrl+b n
  • Önceki pencereye geç:

    Ctrl+b p
  • Belirli numaralı pencereye git:

    Ctrl+b <pencere numarası>

Örneğin pencere 2’ye gitmek için:

Ctrl+b 2

Detaylı Örnek Senaryo:

Oturumda 3 penceren var:

  • Pencere 0: editör
  • Pencere 1: logs
  • Pencere 2: mysql

Mysql penceresine geçmek:

Ctrl+b 2

Sonra tekrar editöre dönmek:

Ctrl+b 0

Not:

Pencere isimlerini değiştirmek karmaşayı azaltır. İlerleyen maddelerde pencere isim değiştirmeyi anlatacağız.


6️⃣ Pencere İsmini Değiştirme

Açıklama:

Bir oturumda birden fazla pencere varsa, isimlerini değiştirmek iş akışını çok kolaylaştırır. Örneğin bir pencereye “logs” diğerine “mysql” adını vererek karışıklığı önlersin.


Kısayol ile İsim Değiştirme:

Ctrl+b ,
  • tmux, pencere adını girmen için status bar’da bir satır açar.
  • Yeni ismi yazıp Enter’a basarsın.

Komut Satırıyla İsim Değiştirme:

tmux rename-window -t 1 logs

Bu komut:

  • 1 numaralı pencerenin adını “logs” olarak değiştirir.

Detaylı Örnek Senaryo:

Varsayalım pencere 2’de MySQL’e bağlandın. İsmini değiştirmek istersin:

Ctrl+b 2
Ctrl+b ,
mysql

Artık status bar’da pencere adı “mysql” olarak görünür.


7️⃣ Yatay Bölme (Pane) Oluşturma

Açıklama:

Bir tmux penceresini yatay şekilde ikiye bölerek aynı anda iki terminali alt alta görebilirsin. Özellikle log takip ederken veya iki komutu paralel izlerken çok kullanışlıdır.


Kısayol:

Ctrl+b "

Bu kısayol:

  • Bulunduğun paneli ikiye böler.
  • Üstteki panel aktif kalır.

Detaylı Örnek Senaryo:

Örneğin:

  • Üst panelde nginx loglarını takip et
  • Alt panelde başka komut çalıştır

Yatay bölme için:

Ctrl+b "

8️⃣ Dikey Bölme (Pane) Oluşturma

Açıklama:

Terminali yan yana bölebilirsin. Özellikle kodlama yaparken ve komut çıktısı izlerken çok işine yarar.


Kısayol:

Ctrl+b %

Bu kısayol:

  • Aktif paneli dikey olarak böler.
  • Sol panel aktif kalır.

Detaylı Örnek Senaryo:

Örneğin:

  • Solda editör açık
  • Sağda log dosyasını izliyorsun

Dikey bölmek için:

Ctrl+b %

Not:

tmux’un “pane” dediği şey, bir pencere içindeki bölünmüş terminallerdir.
Yani pencere → sekme gibi, panel → bölünmüş terminal ekranı gibidir.


9️⃣ Paneller Arasında Geçiş Yapma

Açıklama:

Ekranda birden fazla panel varsa, aralarında geçiş yapmak çok önemlidir.


Kısayol:

Ctrl+b o

Bu kısayol:

  • Sıradaki panele geçmeni sağlar.

Detaylı Örnek Senaryo:

Bir pencereyi üçe böldüğünü düşün. O an aktif olan panelde değil, başka panelde komut çalıştırmak istersin:

Ctrl+b o

Bu şekilde pencerede dolaşırsın.


Yön Tuşları ile Geçiş:

Bazı konfigürasyonlarda aşağıdaki gibi kullanabilirsin:

Ctrl+b ←
Ctrl+b →
Ctrl+b ↑
Ctrl+b ↓

Bu tuşlar yönüne göre panel geçişi yapar.


🔟 Paneli Kapatma

Açıklama:

Kullanmadığın paneli kapatarak ekranda yer açabilirsin. Panel kapatıldığında, varsa çalışmakta olan işlem de kapanır.


Kısayol:

Ctrl+b x
  • tmux, paneli gerçekten kapatmak isteyip istemediğini sorar (kill-pane).
  • “y” basarsan panel kapanır.

Komut Satırıyla Panel Kapatma:

Aktif paneli kapatmak için:

tmux kill-pane

Detaylı Örnek Senaryo:

Üç panelin var, ortadaki fazla:

Ctrl+b o
Ctrl+b x

Ardından “y” tuşuna basarsın. Panel kapanır, diğer paneller ekranı paylaşır.


Not:

Tüm pencereyi kapatmak istersen ileride anlatacağımız “kill-window” komutunu kullanabilirsin.


1️⃣1️⃣ Oturumu Arka Plana Atma (Detach)

Açıklama:

tmux kullanırken bazen yaptığın işi bırakıp terminale dönmek isteyebilirsin. Oturumu kapatmak yerine “detach” ederek çalışmanı arka planda tutabilirsin. Böylece SSH bağlantısı kopsa bile süreçler çalışmaya devam eder.


Kısayol:

Ctrl+b d

Bu kısayol:

  • Oturumu arka plana atar.
  • Terminale geri dönersin.

Komut Satırıyla Detach:

tmux detach-client

Detaylı Örnek Senaryo:

Bir script çalıştırıyorsun:

tmux new -s backup
rsync -av /data /backup

Sonra terminale dönmek için:

Ctrl+b d

Bağlantın kesse bile tekrar bağlanabilirsin:

tmux attach -t backup

1️⃣2️⃣ Oturumu Sonlandırma (Kill Session)

Açıklama:

Bir işin tamamen bittiğinde, tmux oturumunu sonlandırmak istersin. Oturumu “kill” etmek, ilgili tüm pencereleri ve panelleri kapatır.


Komut:

tmux kill-session -t oturumadi

Detaylı Örnek Senaryo:

Örneğin:

tmux kill-session -t backup

Bu komut:

  • backup adlı oturumu kapatır.
  • Status bar kapanır.

Not:

Hiç isim belirtmezsen tüm oturumu kapatmak için:

exit

komutunu tmux içinde yazabilirsin.


1️⃣3️⃣ Scrollback Moduna Geçmek

Açıklama:

tmux penceresinde önceki çıktıları görmek için kaydırma (scrollback) moduna geçersin. Özellikle log takip ederken çok faydalıdır.


Kısayol:

Ctrl+b [
  • Artık ok tuşları veya PageUp/PageDown ile gezinebilirsin.
  • Çıkmak için:
    q

Detaylı Örnek Senaryo:

Bir komut çok uzun çıktı üretti. Geri dönmek için:

Ctrl+b [

Yukarı kaydır, çıktıyı incele, ardından “q” ile çık.


Not:

Varsayılan olarak 2000 satırlık buffer olur. Daha fazla scroll için .tmux.conf dosyanda artırabilirsin:

set-option -g history-limit 10000

1️⃣4️⃣ Komut Satırı (Command Prompt) Kullanımı

Açıklama:

tmux içinde iki türlü komut çalıştırabilirsin:

  • Kısayollar
  • Komut prompt’u

Komut prompt’u, tmux’a tek satırlık komut yazmanı sağlar. Çok pratik bir özelliktir.


Kısayol:

Ctrl+b :

Bu kısayol:

  • Status bar’ın altına : işaretiyle prompt açar.

Örnek Komutlar:

Yeni pencere açmak:

new-window

Pencereyi yeniden adlandırmak:

rename-window logs

Detaylı Örnek Senaryo:

Pencereyi adlandırmak için:

Ctrl+b :
rename-window mysql

Not:

tmux komutlarının çoğu prompt’tan çalıştırılabilir.


1️⃣5️⃣ Tüm Panelleri Eş Zamanlı Yazma (Synchronize Panes)

Açıklama:

Bazen aynı komutları tüm panellere aynı anda yazmak istersin. Örneğin 3 farklı sunucuya aynı anda komut göndermek gibi. “Synchronize-panes” özelliğiyle tüm panellere tek seferde yazabilirsin.


Komut:

Prompt üzerinden:

:setw synchronize-panes on

Kısayol (konfigürasyona bağlı):

Varsayılan yok. Kendi .tmux.conf dosyanda örneğin şöyle ekleyebilirsin:

bind s setw synchronize-panes

Sonra:

Ctrl+b s

Detaylı Örnek Senaryo:

3 panelin var. Hepsine aynı anda şunu çalıştırmak istiyorsun:

uptime

Önce synchronize aç:

Ctrl+b :
:setw synchronize-panes on

Sonra uptime yaz. Tüm panellere aynı anda gider.


Kapatmak İçin:

:setw synchronize-panes off

Not:

Çok dikkatli kullan. Tek tuşla yanlış komutlar tüm panellere gidebilir!


1️⃣6️⃣ Tüm Pencereleri Listeleme

Açıklama:

tmux oturumları içinde birden fazla pencere varsa, hangisinde ne çalıştığını görmek için pencere listesini görüntüleyebilirsin. Çok oturumlu çalışmalar için müthiş kullanışlıdır.


Komut:

tmux list-windows

veya kısaltma:

tmux lsw

Örnek Çıktı:

0: bash* (1 panes) [158x42] [layout b25e,158x42,0,0,0] @0 (active)
1: logs- (1 panes) [158x42] [layout b25e,158x42,0,0,1] @1
2: mysql- (2 panes) [158x42] [layout b25e,158x42,0,0,2] @2

Detaylı Örnek Senaryo:

Örneğin:

  • pencere 0 → bash
  • pencere 1 → logs
  • pencere 2 → mysql

Listelemek için:

tmux list-windows

1️⃣7️⃣ Pencereler Arası Yer Değiştirme (Swap)

Açıklama:

tmux’ta iki pencerenin yerini değiştirebilirsin. Özellikle oturum düzeni oluştururken çok işe yarar.


Komut:

tmux swap-window -s 1 -t 2

Bu komut:

  • Pencere 1 ve pencere 2’nin yerini değiştirir.

Detaylı Örnek Senaryo:

Örneğin:

  • pencere 1 → logs
  • pencere 2 → mysql

Yerlerini değiştirmek için:

tmux swap-window -s 1 -t 2

Sonra tmux list-windows ile kontrol edebilirsin.


1️⃣8️⃣ Panelleri Yeniden Başlatmak (Respawn Pane)

Açıklama:

Bir panelde çalışan işlem kapanırsa veya hataya düşerse, paneli yeniden başlatmak için respawn-pane kullanabilirsin. Özellikle sık çalıştırdığın scriptler için faydalıdır.


Komut:

tmux respawn-pane

Detaylı Örnek Senaryo:

Bir panelde sürekli log tail ediyorsun. Script kapandı. Paneli yeniden başlatmak için:

Ctrl+b :
respawn-pane

Bu, paneli sıfırdan başlatır.


Not:

Bir komut belirterek yeniden başlatabilirsin:

tmux respawn-pane -k -c "/var/log" "tail -f syslog"

1️⃣9️⃣ tmux Konfigürasyon Dosyasını Yeniden Yükleme

Açıklama:

.tmux.conf dosyasında değişiklik yaptıysan, tmux’u kapatıp açmana gerek yok. “source-file” komutuyla ayarları anında yükleyebilirsin.


Komut:

tmux source-file ~/.tmux.conf

Detaylı Örnek Senaryo:

Örneğin:

  • .tmux.conf dosyasına aşağıdaki satırı ekledin:
set -g mouse on

Sonra çalıştır:

tmux source-file ~/.tmux.conf

Mouse desteği hemen aktif olur.


Kısayol Eklemek:

.tmux.conf içine ekle:

bind r source-file ~/.tmux.conf \; display-message "Config Reloaded!"

Sonra:

Ctrl+b r

2️⃣0️⃣ Ekran Görüntüsü Alma (Capture-pane)

Açıklama:

tmux ekranındaki tüm çıktıyı kopyalayıp dosyaya yazabilirsin. Özellikle log yakalamak veya çıktıyı belgelemek için süperdir.


Komut:

Aktif panelin çıktısını dosyaya yazmak:

tmux capture-pane -S -1000 \; save-buffer ~/mylog.txt
  • -S -1000 → son 1000 satırı yakalar.
  • save-buffer → buffer’ı dosyaya kaydeder.

Detaylı Örnek Senaryo:

Örneğin:

  • Son 500 satırı kaydetmek istersin:
tmux capture-pane -S -500 \; save-buffer ~/logs.txt

Sonra dosyayı inceleyebilirsin:

cat ~/logs.txt

Not:

Buffer’ı direkt ekranda görmek istersen:

tmux show-buffer

2️⃣1️⃣ Panelleri Yeniden Düzenleme (Break Pane)

Açıklama:

Bir paneli yeni bir pencereye taşımak istersen “break-pane” komutu kullanılır. Özellikle kalabalık panelleri temizlemek veya ayrı bir sekmeye taşımak için çok işe yarar.


Kısayol:

Ctrl+b !
  • Aktif paneli yeni pencereye taşır.

Komut Satırıyla:

tmux break-pane

Detaylı Örnek Senaryo:

Bir pencerenin içinde 3 panelin var. Ortadaki paneli bağımsız yapmak için:

Ctrl+b o
Ctrl+b !

Artık o panel yeni bir pencereye taşınır.


2️⃣2️⃣ Pencereleri Yeniden Adlandırma Scripti

Açıklama:

Çoklu oturumlarda pencere isimlerini dinamik şekilde değiştirmek için küçük bir bash scripti yazabilirsin. Bu, özellikle otomasyon için çok kullanışlıdır.


Script Örneği:

#!/bin/bash
SESSION=$1
WINDOW_ID=$2
NEW_NAME=$3

tmux rename-window -t ${SESSION}:${WINDOW_ID} "${NEW_NAME}"

Detaylı Örnek Senaryo:

Örneğin “backup” oturumunun 2. penceresinin adını “sync_logs” yapmak için:

./rename_tmux_window.sh backup 2 sync_logs

Bu, otomasyonda çok zaman kazandırır.


Not:

Script’e execute izni vermeyi unutma:

chmod +x rename_tmux_window.sh

2️⃣3️⃣ Pane Boyutlarını Ayarlama

Açıklama:

tmux’ta panellerin boyutunu istediğin kadar büyütüp küçültebilirsin. Özellikle monitörün küçükse veya belirli bir paneli genişletmek istiyorsan çok işine yarar.


Kısayollar:

Ctrl+b :
resize-pane -D 10   # aşağı 10 satır büyüt
resize-pane -U 10   # yukarı 10 satır küçült
resize-pane -R 20   # sağa 20 kolon büyüt
resize-pane -L 20   # sola 20 kolon küçült

Komut Örneği:

Bir paneli sağa genişletmek:

tmux resize-pane -R 15

Detaylı Örnek Senaryo:

Bir panelde logları izliyorsun ve daha geniş görmek istiyorsun:

Ctrl+b :
resize-pane -R 30


title: 'tmux Kullanıcı Rehberi: En Faydalı 25 Komut ve Kısayol'

💻 tmux Kullanıcı Rehberi: En Faydalı 25 Komut ve Kısayol

Hazırlayan: [kazakherif]
Tarih: 2025-07-13
Amaç: tmux kullanarak terminalde daha verimli çalışmak ve komut satırı deneyimini ileri düzeye taşımak için en önemli komutları ve kısayolları paylaşmak.


2️⃣4️⃣ tmux Plugin Manager (TPM) Kullanımı

Açıklama:

tmux’un yeteneklerini genişletmenin en güzel yolu eklentiler (plugin) kullanmaktır. Bunun için en yaygın araç TPM (Tmux Plugin Manager)’dır. TPM sayesinde tmux’a yeni özellikler ekleyebilir, kısa yollar tanımlayabilir ve config yönetimini kolaylaştırabilirsin.


TPM Kurulumu:

Önce TPM’yi klonla:

git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

.tmux.conf Dosyasına Ekle:

Örneğin:

set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'

run '~/.tmux/plugins/tpm/tpm'

Bu satırlar:

  • TPM’yi çalıştırır.
  • tmux yeniden başladığında eklentileri yükler.

Eklentileri Yüklemek:

tmux çalışırken aşağıdaki kısayola bas:

Ctrl+b I

Bu komut:

  • Tüm belirtilen eklentileri indirir ve yükler.

Detaylı Örnek Senaryo:

tmux-resurrect eklentisini eklemek istersen:

set -g @plugin 'tmux-plugins/tmux-resurrect'

Sonra:

Ctrl+b I

Bu eklenti, oturumu kaydedip geri yüklemene yarar.


Not:

  • Tüm eklentileri güncellemek için:
    Ctrl+b U

TPM kullanmak tmux’u bambaşka bir seviyeye taşır!


2️⃣5️⃣ Oturum Kaydetme ve Geri Yükleme (tmux-resurrect)

Açıklama:

Çok pencere, çok panel ve karmaşık oturumlar kullanıyorsan, hepsini kaydedip geri yüklemek inanılmaz zaman kazandırır. tmux-resurrect eklentisi bunu yapar. Oturumunu olduğu gibi saklar, sonra tekrar aynı hâle getirir.


Kurulum:

Önce TPM’yi kurmalısın (bkz. Madde 24). Sonra .tmux.conf’a ekle:

set -g @plugin 'tmux-plugins/tmux-resurrect'

Sonra yükle:

Ctrl+b I

Oturumu Kaydetmek:

Ctrl+b Ctrl+s

Bu kısayol:

  • Mevcut tüm pencereleri, panelleri ve çalışan komutları kaydeder.

Oturumu Geri Yüklemek:

Ctrl+b Ctrl+r

Bu kısayol:

  • Kaydettiğin tüm düzeni, panelleri, pencereleri ve çalıştırdığın komutları geri yükler.

Detaylı Örnek Senaryo:

Örneğin:

  • 5 penceren var.
  • Her pencere 2–3 panele bölünmüş.
  • SSH bağlantın koptu.

Önce kaydet:

Ctrl+b Ctrl+s

Bağlantın kopsa bile tekrar SSH ile girip geri yükle:

tmux attach
Ctrl+b Ctrl+r

Tüm düzenin geri gelir.


Not:

  • Özellikle sunucu yönetiminde hayati bir eklentidir.
  • “tmux-continuum” eklentisi ile otomatik kayıt da mümkün.