[Tmux Series 1] What is Tmux?

한국어 버전

Tmux is a terminal multiplexer. It runs inside your terminal app and lets you keep one workspace organized as sessions, windows, and panes instead of juggling many separate terminal windows.

What We'll Cover

  • What problem Tmux solves in daily terminal work
  • What sessions, windows, and panes mean
  • When Tmux is useful and when it may be unnecessary

Why This Tool Matters

Imagine you are building a web app and need to handle three things at once:

  1. Edit code in Vim
  2. Run the development server
  3. Check Git status and logs

Without Tmux, you usually spread that work across multiple terminal windows. That creates three common problems:

  • Too many windows to manage
  • Constant app or window switching
  • Easy-to-break workflows when you lose track of which window is doing what

Tmux solves those problems by giving you one organized workspace. You can split one terminal into multiple panes, group related tasks into one session, and leave a session running while you disconnect from it and return later.

What Tmux Is

Tmux is not a replacement for iTerm2, Terminal, or another terminal app. It runs inside those apps.

Tmux also is not a shell. You still use Zsh, Bash, or another shell inside it.

The useful mental model is simple:

  • Your terminal app shows the Tmux interface
  • Tmux manages sessions in the background
  • You can detach from a session and attach to it again later

Here, detach means leaving the Tmux view without ending the work inside it. The programs in that session keep running, so you can reconnect later and continue where you left off.

Three Core Concepts

Start with these three building blocks.

Session

A session is the main workspace for one project or one group of related tasks.

Examples:

  • A "website" session
  • A "study" session
  • A "server-maintenance" session

If you keep one project per session, it becomes much easier to return to the right environment later.

Window

A window is like a tab inside a session. You usually look at one window at a time and switch between them when needed.

Example layout inside one session:

  • Window 1: Code editing
  • Window 2: Server logs
  • Window 3: Git work

Pane

A pane is a split region inside one window. Panes let you see multiple terminal views at the same time.

Example:

┌────────────────────────┬────────────────────────────────────┐
│ username@macbook ~ %   │ username@macbook ~ %               │
│ $ vim app.py           │ $ python server.py                 │
│                        │ Starting server on port 8000...    │
│ 1  import flask        │                                    │
│ 2                      │                                    │
│~                       │                                    │
└────────────────────────┴────────────────────────────────────┘

In this layout, you edit code on the left and watch server output on the right without opening another terminal window.

How Work Changes With Tmux

The point of Tmux is not just "more terminal features." It gives you a better way to organize ongoing work.

Situation Without Tmux With Tmux
Code + server logs Two separate windows Two panes in one window
Git work Another separate window Another window in the same session
Project switching Clean up and reopen windows Attach to a different session
Long-running tasks Easy to lose track of them Keep them grouped in one workspace

Here is the same idea as a concrete example.

Without Tmux:

Terminal window 1: Vim for code
Terminal window 2: `npm run dev`
Terminal window 3: `git log`

You keep hopping between windows, and the project feels spread out.

With Tmux:

One Tmux session: "myproject"
- Window 1: Vim for editing
- Window 2: Server work
- Window 3: Git work

Now the project has one home. You can leave it, come back, and keep the structure intact.

Who Benefits Most

Tmux is especially useful for:

  • Developers who run several terminal tasks at once
  • People who want keyboard-driven split layouts
  • Engineers who work on remote servers over SSH
  • Anyone who wants project-based terminal organization

Tmux may be unnecessary if you usually run only one simple terminal task at a time or already prefer your terminal app's built-in split view for light work.

Quick Recap

  • A session is the top-level workspace
  • A window is a tab inside a session
  • A pane is a split area inside a window
  • Tmux helps you organize terminal work without relying on many separate windows
  • Detaching lets you leave a session and reconnect later

Up Next

If these ideas make sense, the next step is to install Tmux and create your first session.

Tmux Series Part 2: Install and Start Your First Session walks through installation, creating a session, and practicing the essential session commands.

Practice Checklist

  • Understand when Tmux helps
  • Know what session, window, and pane mean
  • Understand what detach means
  • Ready to install Tmux in the next guide

💬 댓글

이 글에 대한 의견을 남겨주세요