back
310 comments
I love Midnight Commander so much; I install it on every system I use. It's so much more efficient/pleasant when in comes to navigating the filesystem and doing basic operations, especially when you learn the shortcuts and learn how to use it along with other command-line tools (hint: if you press Ctrl+O in MC it will switch to a normal shell command prompt it the directory you're in, and you can press Ctrl+O again to get back to MC; this allows you to easily use MC for things it is the most efficient for, and normal command-line for things where that is better).
I use it especially when moving files around in my NAS and it is awesome.

For GUI file managers, I have to say you can't get better than Dolphin. It has an integrated shell for the current directory, and you can split the view. It can also directly open ssh and SFTP URLs. For local things the combination of Dolphin and it's shell is unbeatable.

> Ctrl+O in MC will switch to a normal prompt

Better yet! (one-line) shell prompt is always available and has some nifty integrations via <Ctrl+X>. For example, one has a bunch of files visually tagged (selected) on current panel, and wants to tar them up as "/tmp/foo.tgz". Well...

   tar czf /tmp/foo.tgz <Ctrl+X><T>
My only issue with it is that it does not come with vim keybindings by default, I love to have consistent keybindings across my system / TUI tools
I think I love it more than you do. I am sure of it. It is ingrained into my workflow and how I think about files.
Same here. I wonder how much does it have to do with the fact that I came of age during the MS-DOS era. The design seems just so sleek and efficient to me.
Interestingly, the latest GNOME sorta supports something similar, as a new feature:

> ..a “Ctrl + dot” keyboard shortcut for opening the current directory in the terminal

https://9to5linux.com/gnome-49-brescia-desktop-environment-o...

I have loved it since '99, when my friends used to tell me that to be a linux admin you have to stay up late because midnight commander works only after midnight ! Slackware 7 <3
Can you reference the file that was modified latest by me? With one shortcut?

Because that's what I miss most in my shell.

That hint is amazing! I tried it out and love that you can do this!
Midnight commander is a great tool, although I think most younger users do not realize that we lost something along the way. Norton Commander was fantastically fast for common file operations not just because of the dual-pane design, but because of several things working together. Thoughtful design of software while thinking of hardware. To get the most out of it, you were supposed to use the numpad on your keyboard. And it should be the classic IBM PC numpad: large +, large 0, [num]/*- in the top row. Then, you wanted your function keys as a top row above your keyboard. Also, ESC was supposed to work immediately, not after a delay.

I know many people think these things don't matter, because you can do everything with MC (and more), but I disagree. In this case, every fraction of a second matters. In the setup I described above, selecting all files in the current directory and moving them to the directory in the other pane is: one flick of the right hand (roll over + and Enter on the numpad), F6 with the left hand followed by another Enter immediately with the right hand. Now try to do that using the + that is on your = key and tell me it's the same thing.

dual-pane file manager

For some reason, the technical term for these is Orthodox File Manager, which I've always thought was an obscure cultural in-joke from the countries where these were most popular --- Eastern Europe and the former USSR.

This origin is elaborated at length here: https://softpanorama.org/Articles/introduction_to_orthodox_f...

The thing about Orthodox File Managers when they first came about, that does not occur today, was the amount of time that had to be devoted to explaining that particular features would not work on OS/2, Unices, Linux-based operating systems, or Windows NT because only MS/PC/DR-DOS let programs do things like directly manipulate stuff in some other program's PSP or directly peek/poke video RAM or the keyboard buffer; or that filenames did not necessarily have "extensions"; or that there was more than 1 type of timestamp; or that links and symbolic links existed; or that different people can have different local times on a single machine; or that directories actually have sizes.

Today, the DOS Think is far less prevalent.

Midnight Commander's screenshots would have looked a little off to OFM users with DOS Think. Today, it's the original MS/PC/DR-DOS tools that will appear odd to novices. They did things like have a narrow 8.3 filename column, omit the dots, use graphics in the filename for system files, use glyphs that one could only obtain through poking C0-range codes into video RAM, change UI elements as one pressed and released the Alt key, and so forth.

I never could use mc. None of the keyboard shortcuts were at all intuitive to me, who had been using many different GUI file managers over the decades. Which is a shame, because I use SSH a LOT and doing normal file housework via pure CLI is super tedious and error-prone... Fortunately, I went looking more recently, and found the nnn file manager, which works properly with the basic keyboard commands I would expect, and really helped improve my workflow a lot:

https://en.wikipedia.org/wiki/Nnn_(file_manager)

I never used MC (not very much into TUIs) but ages ago I wrote a graphical file manager in the same vein. For me the inspiration came from Directory Opus [1] on the Amiga, which was just awesome.

When GTK+ was released in the late 90s, combining my love of C programming with a newfound home in Linux and GTK+'s ability to make complicated graphical interfaces resulted in a dual-pane file manager. It was a great project.

[1]: https://en.wikipedia.org/wiki/Directory_Opus

This with the "Lynx-like motion" panel option and the "Quick view" enabled is the best way to review a source tree. So much so that the Debian ftp-masters use it and a plugin for doing license review of newly introduced packages.

https://lists.debian.org/msgid-search/20191228133344.GA4943@...

I've been using `mc` for decades... In fact, in my early professional days as a software dev, I've written entire systems with PHP using `mcedit` (the built-in editor), because I didn't know `vim` then, and `mcedit` had syntax highlighting...
I used to use XTree Gold, which was... golden. I always heard of Midnight Commander but never really got around to using it. I should probably fix that.

What I never got was why this style of TUI (MS edit.com, qbasic, etc) isn't really carried through in modern tradition? I really enjoyed these when when I was younger... yet even textual or ratatui apps don't really bring this interface to the terminal. (Or why screen-coordinate-based terminals aren't the norm to base TUI apps upon... this aspect just seems "obvious" but in this aspect modern terminal emulates seem lightyears behind MS-DOS, of all things).

Perhaps the rewrite of edit [1] will spawn a ressurgence of this TUI style?

[1] https://devblogs.microsoft.com/commandline/edit-is-now-open-...

I still love FAR Manager: https://www.farmanager.com/screenshots.php?l=en (UNIX port: https://github.com/elfmz/far2l ).

It now even supports true keyboard reporting (through Kitty TTY protocol on compatible terminals) for SSH connections.

I still have great affection for Midnight Commander, like Norton Commander before it. I used to use the latter to initiate a parallel cable connection to my brother's computer for Doom deathmatches, pretty cool for a file manager.

For no good reason, here's a screenshot of both of them running side by side on an iPad, which is a thing you can apparently do these days:

https://pbs.twimg.com/media/GYRYTq6WUAAt_1t?format=jpg&name=...

Anytime I see this stuff, I get nostalgic for Norton Commander (it was HUGE in the USSR when I was a kid learning computers in the late 80s and early 90s)

But somehow the reality of how I - and I think most people - use computers today is very different. I don't find myself navigating a shallow directory hierarchy and making file operations too often. A part of it is that all the stuff is in the cloud or at least connected to applications (eg: I am more likely to navigate my coding projects from an IDE than from Shell/MC)

And when I administer eg my home linux system, it seems more likely that I jump to a random far-away directory or edit a specific file, rather than navigating the filesystem MC stye.

I am curious how people are using computers today that MC-like interface is still most suitable.

When I was young and incompetent mc was the only way I knew to remove files starting with a dash :)
I have been using mc for almost 30 years, and the original Norton Commander as a kid before that!

Pleasantly surprised to see this topping HN today, and even more than the project and its website are still maintained in 2025.

Brings back memories. This is one of my older open source contributions that's still visible. I helped port it to a/ux in the early 90's. Line 98: https://fossies.org/linux/mc/AUTHORS

It was originally written by Miguel de Icaza who became a semi-famous for his work on Mono and others.

For anyone looking for more modern terminal file managers: my favorite is yazi since it has great preview capabilities out of the box and requires zero config, but other alternatives are nnn, ranger, walk and lf.
For people on Android phones, Ghost Commander is neat.

For people who like the power of Emacs dired, there used to be Sunrise Commander but last I looked it wasn't so actively maintained and had some bugs, so I've sadly gone back to regular dired.

Total Commander is still the first thing I install on every fresh Windows install for the last 20 or so years. Copy/move/delete etc keys are the same as in mc.
For some strange reason I am attracted to try to use ZTreeWin, even though I am using a dual pane manager as my daily driver, but there is some nostalgic force driving me to try and force myself onto ZTreeWin. I even bought the license for it more than 2 years ago, but still haven't touched it in any serious capacity. I mostly lack the convenience and speed by which I am able to accomplish tasks in my existing (dual panel) orthodox filemanager, and at the same time I am losing patience by learning every single thing in it from sratch. Does anyone know of a good learning resource for ZTreeWin?
It seems nobody remembers the reason for the F-key assignment in the original i.e. Norton Commander... The assignment was very logical and easy to remember (and use) on the original PC keyboard, where F-keys were located in two columns on the left edge of the keyboard: F1, F2, then F3, F4, and so on. You can immediately see the advantages of the F9 location (the leftmost key at the bottom) and of the proximity of the Browse and Edit keys. I used my left thumb to press F10 - it was in the correct place almost without palm movement...

Nowadays I almost don't use Mc (except for file manipulation) because the Linux version has a serious weak point - it blocks the most important keystroke in shell: Tab. It is of course traditionally reserved for panel switching but this role could be deactivated when instead a single command line zone MC would allow to have a multi-line (in NC it was 3 or 4 line) zone for the shell scrolled display. This way it would be possible to have the full-size panel display (with the Tab switching panes) and one keystroke away reduced-size panels with full functionality of the shell tab key in the alternative panel mode... Another disadvantage is the complicated way of changing settings (especially the colors and file attributes display format) in practice forcing trial and error mode... True, it's not needed often but spending hours on it is rather deterrent.

GNU MC is indispensable. Some basic features it has still like a file overwrite strategy prompt is absent from many modern file managers of the day like yazi.

One of the most overlooked features is a custom user menu[1]. It allows greatly expanding MC's capabilities with custom actions and integrate it into specific workflows. No plugins or DSLs, just a `sh` calling whatever you like.

For example, I have a couple keybinds for transferring selected files/directories over rsync while browsing the remote directory over sftp. You can easily adapt it to do the same for directories mounted remotely with sshfs/rclone mount.

Another action that I like to add (this one I actually use in Double Commander on my GUI workstation) is to automatically convert transferred files on the fly, like compress media with ffmpeg (WAV to FLAC, * to OPUS, etc).

[1]: https://source.midnight-commander.org/man/mc.html#Edit_Menu_...

I haven't used this for a long old time. Back in the day it was the only way to recover your university dissertation when you'd rm -rf'd in the wrong directory.

Go on, ask me how I know ...

I've not had much cause to use it since then though.

I've always found Midnight Commander to be underrated, perhaps because it "looks old". I still recommend checking it out if you want a terminal-based file manager.

In case you do prefer GUIs, consider DoubleCommander.

`mc` was a gateway drug for me to switch from DOS to Linux in 1995. Because I hadn't been gotten comfortable with other text editors and file management commands yet, mc and its own text editor (mc -e) had felt very intuitive at the time. I felt at home. I was also amazed by stuff like FTP VFS support. It was so complete and done right.
Very cool successor of Norton Commander idea.
Shameless plug: https://github.com/candidtim/f2-commander

I've been working on "F2 Commander" on and off for a while now. At first, I wanted a TUI to view the contents of cloud storage buckets (GCS, S3, etc.), but it quickly evolved into an orthodox file manager. The funny thing is, the first version was in Common Lisp, but then I discovered Textual and was instantly sold on it - it's really fun to work with. The app scratches my itch, and although most of the time I myself prefer just using the regular command line, I open it up when I need to quickly navigate or move some files in a complex directory tree.

[1] https://textual.textualize.io/

Nostalgia! However; dired (and wdired) is more powerful, so I won't be switching back any time soon.
I been using mc since mandrake days, coming from dos looking for a norton commander replacement.

Still use mc in 2025 :-)

After moving from Windows to MacOS mc is the closest to Total Commander - the only software that I’m still missing from MacOS. Reminds me to DOS Navigator and Volkov Commander or even FAR
I just couldn't live without this thing. Well, I could but I would be less productive and more grumpy.

Back in the mists of time when dinosaurs roamed the earth and I developed DataEase applications under MS-DOS there was a thing called "Pathminder" [1] which was a very useful tool. Moving to Linux and finding Midnight Commander felt like coming home...

[1] https://en.wikipedia.org/wiki/PathMinder

In a restricted environment like a console only system these two pane file managers are very useful. I was a heavy user of norton commander (nc) back in my DOS days. Also these are useful on mobile.

However I rarely use them on a graphical environment like windows where I can open arbitrary explorer windows and arrange them as I see like. I guess it depends on what people have experience on...

It's an interesting file browser, the default "blue" colors gives old-school vibes nowadays.

If you wonder how to quit (if started from a terminal):

It's `ESC 0`. Or "exit" like from a shell. Took me some time I have to admit (q, ctrl-c, ctrl-q, F10, ESC all did not work).

Didn’t realize mc was under gnu banner. Nice.

I’ve been trying to get used to ranger since I’m learning vim anyway

Been using MC for over 20 years (and NC before it). Still haven't found a better file manager (GUI or TUI), and I've tried many. I even use it on my Mac.

I use it for SCP and S3 file management too (first mounting the folder using sshfs or goofys).

We all know it’s a clone of the Norton commander.
I have been using Norton Commander from early versions. Then Volkov Commander.

Somehow during my 30+ years *nix career I never truly and actually used mc. Seems like moving files around in shell is good enough.

I still often go to mc over a gui file manager whenever I am doing something isn't straightforward to capture with a regular command. Like moving a group of files that isn't related by name, date, size etc. There are more linux-like text file managers that have vim bindings etc and are probably a better choice for the terminal crowd now but I have had mc installed on my machines since the mid 90s when emulating a dos file manager made a lot more sense.
I used Far manager(https://www.farmanager.com/screenshots.php) a lot back in the days, clone of norton commander. Got hooked to it, after joining the se-nse.net forum (https://www.facebook.com/sensedotnet). Sadly it's been disbanded now
If you're stuck on Windows I recommend xplorer². https://www.zabkat.com/