Midnight Commander (mc)
GNU Midnight Commander is the classic two-panel terminal file manager — browse, copy, move, and view files with the keyboard, exactly as it has worked for thirty years.
Two directory listings sit side by side. You move around one panel, mark
files, and copy or move them into the other with a single function key.
Built in are a file viewer, an editor (mcedit), an FTP and SFTP client so
a remote host shows up as just another panel, a directory hotlist, and the
ability to step into archives as if they were folders. A command line runs
along the bottom of the screen, and Ctrl-O drops you into the plain
shell and back.
The demo above is the real thing, booted into a private VM in your
browser. Move with the arrow keys, Tab to switch panels, F5 to copy
the selected file across, F3 to read it. Nothing you type leaves the
tab.
Keys to know
Tab | switch between the two panels |
Enter | open the directory or file under the cursor |
F3 | view the selected file |
F4 | edit the selected file in mcedit |
F5 | copy the selected files to the other panel |
F6 | move or rename the selected files |
F7 | make a directory |
F8 | delete |
Ctrl-O | hide the panels and show the plain shell |
F10 | quit |
Install Midnight Commander on your own machine
| Alpine | apk add mc |
| Debian / Ubuntu | apt install mc |
| Fedora | dnf install mc |
| macOS (Homebrew) | brew install midnight-commander |
This VM was last built on Aug 19, 2026. How Demoshell demos work →
Similar tools you can try here
- Midday Commander — A dual-panel terminal file manager in Go with a fuzzy finder, bookmarks and archive browsing, live in a private VM.
- Yazi — The fast terminal file manager in Rust with vim keys and live file previews, running in a private Linux VM. Nothing to install.
- nnn — The tiny, fast terminal file manager that filters as you type, with four contexts and plugins, running live in a private Linux VM.
- eza — The modern ls replacement with meaningful colours, a git status column and a built-in tree view, running live in a private Linux VM.