tmux – vollständige Befehlsreferenz

Alle Standard-Tastenkürzel (tmux 3.x) und die zugehörigen Shell-Befehle. `C-b` bedeutet Ctrl + b: zuerst das Präfix drücken, dann die Taste. In den Shell-Befehlen steht -t für das Ziel (target), siehe unten.

Schnellstart: tmux new -s main startet eine Session, C-b d löst sie (läuft weiter), tmux a -t main verbindet wieder, tmux ls zeigt alle Sessions.

Grundlagen

Shell-BefehlWirkung
tmuxneue, unbenannte Session starten
tmux new -s mainneue Session mit Namen main starten
tmux new -d -s mainSession im Hintergrund starten (detached)
tmux new -A -s mainan main anhängen, sonst neu anlegen
tmux new -d -s job 'htop'Session starten und darin einen Befehl ausführen
tmux -Vinstallierte tmux-Version anzeigen
man tmuxHandbuchseite

Sessions

Tastenkürzeltmux-BefehlWirkung
C-b ddetach-clientSession lösen (läuft im Hintergrund weiter)
C-b schoose-tree -sSessions auflisten und wechseln
C-b $rename-sessionSession umbenennen
C-b (switch-client -pzur vorherigen Session
C-b )switch-client -nzur nächsten Session
C-b Lswitch-client -lzur zuletzt verwendeten Session
C-b : kill-sessionkill-sessionaktuelle Session beenden (kein Standardkürzel)
Shell-BefehlWirkung
tmux ls / tmux list-sessionsalle Sessions anzeigen
tmux a -t main / tmux attach -t mainan Session main anhängen
tmux attach -d -t mainandere Clients trennen und anhängen
tmux kill-session -t mainSession beenden (alle Fenster darin)
tmux rename-session -t alt neuSession umbenennen
tmux switch-client -t mainClient umschalten (aus tmux heraus)
tmux has-session -t main && echo okprüfen, ob Session existiert (für Skripte)
Achtung: tmux kill-server beendet alle Sessions und den tmux-Server – nur bewusst verwenden.

Fenster (Windows)

Tastenkürzeltmux-BefehlWirkung
C-b cnew-windowneues Fenster öffnen
C-b ,rename-windowFenster umbenennen
C-b wchoose-tree -wFensterliste anzeigen und wechseln
C-b n / pnext-window / previous-windownächstes / vorheriges Fenster
C-b llast-windowzuletzt verwendetes Fenster
C-b 0 – 9select-window -t NFenster über die Nummer wählen
C-b 'select-windowFenster per Nummer/Name wählen
C-b &kill-windowFenster schließen (mit Rückfrage)
C-b ffind-windowFenster nach Inhalt/Titel suchen
C-b .move-windowFenster auf andere Nummer verschieben
C-b Alt+n / Alt+pnext-window -a / previous-window -anächstes / vorheriges Fenster mit Aktivität
Shell-BefehlWirkung
tmux new-window -t main -n logsneues Fenster logs in Session main
tmux list-windows -t mainFenster der Session anzeigen
tmux select-window -t main:3Fenster 3 auswählen
tmux rename-window -t main:1 editFenster umbenennen
tmux kill-window -t main:2Fenster schließen
tmux move-window -s main:2 -t other:5Fenster in andere Session verschieben

Panes (geteilte Bereiche)

Tastenkürzeltmux-BefehlWirkung
C-b %split-window -hPane teilen: links / rechts
C-b "split-window -vPane teilen: oben / unten
C-b oselect-pane -t :.+zum nächsten Pane
C-b ;select-pane -t :.-zum zuletzt verwendeten Pane
C-b ←↑↓→select-pane -L/-U/-D/-RPane in Richtung wechseln
C-b Ctrl+←↑↓→resize-pane …Größe um 1 Zeile / Spalte ändern
C-b Alt+←↑↓→resize-pane … 5Größe um 5 Zeilen / Spalten ändern
C-b zresize-pane -ZPane maximieren / wiederherstellen
C-b xkill-panePane schließen (mit Rückfrage)
C-b !break-panePane in ein eigenes Fenster lösen
C-b qdisplay-panesPane-Nummern anzeigen
C-b { / }swap-pane -U / -DPanes tauschen
C-b Ctrl+o / Alt+orotate-windowPanes rotieren
C-b Leertastenext-layoutnächstes Layout
C-b Alt+1 – Alt+5select-layout …Layout: even-horizontal, even-vertical, main-horizontal, main-vertical, tiled
Shell-BefehlWirkung
tmux split-window -h -t main:1Fenster horizontal teilen
tmux split-window -v -l 30%Pane teilen, neues Pane mit 30 % Höhe
tmux list-panes -aalle Panes aller Sessions anzeigen
tmux select-pane -t main:1.2Pane 2 in Fenster 1 auswählen
tmux resize-pane -t main:1.0 -R 10Pane um 10 Spalten verbreitern
tmux swap-pane -s main:1.0 -t main:1.1zwei Panes tauschen
tmux break-pane -t main:1.1Pane in eigenes Fenster lösen
tmux kill-pane -t main:1.1Pane schließen

Copy-Modus und Puffer

Tastenkürzeltmux-BefehlWirkung
C-b [copy-modeCopy-Modus starten (blättern, kopieren)
C-b PgUpcopy-mode -uCopy-Modus starten und hochblättern
C-b ]paste-bufferPuffer einfügen
C-b =choose-bufferPuffer auswählen und einfügen
C-b #list-buffersalle Puffer anzeigen

Im Copy-Modus (Standardbelegung, Emacs-Modus):

TasteWirkung
qCopy-Modus verlassen
LeertasteAuswahl beginnen
EnterAuswahl kopieren und beenden
PfeiltastenCursor bewegen
g / GAnfang / Ende des Verlaufs
Ctrl+u / Ctrl+dhalbe Seite zurück / vor
/ … ? …vorwärts / rückwärts suchen
n / Nnächster / vorheriger Treffer
Shell-BefehlWirkung
tmux capture-pane -p -t main:1.0sichtbaren Pane-Inhalt ausgeben
tmux show-bufferaktuellen Puffer anzeigen
tmux save-buffer datei.txtPuffer in Datei speichern
tmux load-buffer datei.txtDatei in den Puffer laden
tmux set-buffer "Text"Text in den Puffer legen

Ansicht, Clients und Sonstiges

Tastenkürzeltmux-BefehlWirkung
C-b ?list-keysalle Tastenkürzel anzeigen
C-b :command-prompttmux-Befehl eingeben
C-b tclock-modeUhr anzeigen
C-b ~show-messagesMeldungen anzeigen
C-b rrefresh-clientAnzeige neu zeichnen
C-b Dchoose-clientClient auswählen / trennen
C-b idisplay-messageInformationen zum Fenster anzeigen
C-b Ctrl+zsuspend-clienttmux in den Hintergrund legen

Konfiguration und Wartung

Shell-BefehlWirkung
tmux source-file ~/.tmux.confKonfiguration neu laden
tmux set-option -g mouse onMausunterstützung aktivieren
tmux set-option -g history-limit 20000Scrollback vergrößern
tmux show-options -gglobale (Server-)Optionen anzeigen
tmux show-options -gwFenster-Optionen anzeigen
tmux list-keysaktuelle Tastenkürzel auflisten
tmux list-commandsalle tmux-Befehle auflisten
tmux bind-key X befehlTaste zur Laufzeit binden
tmux unbind-key XBindung entfernen

Zielangaben (target)

SchreibweiseBedeutung
mainSession main
main:2Fenster 2 in Session main
main:2.1Pane 1 in Fenster 2
main:editFenster mit dem Namen edit
:1 / :=1Fenster 1 der aktuellen Session

Ohne Angabe gilt die aktuelle Session, das aktive Fenster beziehungsweise das aktive Pane.

Nützliche Einzeiler für Skripte

tmux new -A -s main                          # anhängen oder neu anlegen
tmux has-session -t main || tmux new -d -s main   # idempotent starten
tmux new -d -s job 'python3 skript.py'       # Hintergrundjob in eigener Session
tmux send-keys -t main:1 'ls -la' Enter      # Befehl in ein Fenster senden
tmux pipe-pane -o -t main:1 'cat >> ~/main.log'  # Fensterausgabe mitschreiben
tmux list-sessions -F '#{session_name}: #{session_windows} Fenster'
Formatvariablen (z. B. für -F): #{session_name}, #{window_index}, #{window_name}, #{pane_index}, #{pane_current_command}, #{pane_current_path}.