GNU Midnight Commander

123 pykello 71 9/17/2025, 3:54:06 AM midnight-commander.org ↗

Comments (71)

kouteiheika · 1h ago
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).
pimeys · 1h ago
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.

unmole · 50m ago
> and you can split the view

You could do the same with Nautilus. But in their infinite wisdom GNOME developers decided to remove that ability.

userbinator · 2h ago
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...

kqr · 1h ago
The "orthodox" comes from a specific type of GUI, namely one that is driven by commands under the hood. UI elements are merely used to trigger commands that have the actual effect, and these commands could just as well be executed by hand, or automated into more complex commands.

This is an excellent way to build powerful UIs. It is what drives things like Vim, and often why Lisp-based software is so hackable -- think Emacs, StumpWM, etc. Instead of writing plugins against some small plugin API, you're wiring new functionality directly into the application.

The article you reference goes into more detail, as you say.

bluetomcat · 6m ago
They were popular because there was no Unix culture in Eastern Europe at the time. Pretty much any computer geek was a DOS user. To me personally, it always seemed kind of lame because many of these people would not bother to properly learn the shell language.
Klaster_1 · 1h ago
At least in Russia, "orthodox" has an extra connotation that's not strictly coupled to church, akin more to "one true way", as in "orthodox way to learn a tech stack". With a negation, it becomes something like "wrong" or even "heretical", as in "pizza with pineapple".
andrewshadura · 1h ago
What you're describing is the meaning of the word in English. I suspect using the word православный with this meaning started as a joke transplanting the English meaning of the word onto the corresponding Russian word.
kgeist · 27m ago
"Orthodox" in Russian is "pravoslavny", literally "right faith" (pravyj = right, correct). I think it also contributes to the meaning. "The right way".
rswail · 30m ago
The English word for that is "canonical".
unwind · 5m ago
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

JdeBP · 1h ago
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.

pabs3 · 1h ago
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@...

axiolite · 58m ago
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)

buserror · 44m ago
Same here, nnn feels so much lighter too. It also works out of the box, no need to carry around "your" .rc file on dozens of systems as you work
vsviridov · 1h ago
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...
Joel_Mckay · 1h ago
Mostly used Notepad++ or SciTE ( https://www.scintilla.org/ ) over the years, as the number of languages/platforms I traverse made it a consistent option for dealing with various document encodings etc.

I thought mc and mcedit was cool, but needed something small and portable within a fairly locked-down environment ( "No [root] for you!" as the admin would say.) =3

kqr · 1h ago
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.

xenodium · 48m ago
Dired is awesome. It’s replaced a bunch of my terminal usage https://xenodium.com/how-i-batch-apply-and-save-one-liners
riffraff · 2h ago
When I was young and incompetent mc was the only way I knew to remove files starting with a dash :)
muppetman · 1h ago
Hahah same!!!!
aquir · 36m ago
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
hdrz · 9m ago
Try doublecmd[1], much better then tc, open source, updated frequently, works on all platforms. Oh and written in object pascal, which I like a lot!

[1]: https://doublecmd.sourceforge.io

glimmung · 1h ago
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

zaptheimpaler · 46m ago
I've been using OneCommander [1] on Windows for a few years now, it's great. Also dual pane with lots of extra features and active development.

[1] https://www.onecommander.com/

RachelF · 34m ago
I think the best tool for Windows is Total Commander or TCUP if you want the kitchen sink included:

https://tcup.pl/

mischief6 · 52m ago
my one gripe after using mc for a few years is no parallel transfer support. it slows down significantly when transferring small files compared to one large file.
pantulis · 1h ago
The killer feature in mc was the popup menu that you could configure to run several commands on the selected files. And if memory serves it could be customized on a global or directory specific way.
xenodium · 45m ago
I didn’t use mc much back in the day, but I do use Emacs dired a ton these days. Specially for applying command line utilities to a bunch of files. https://xenodium.com/how-i-batch-apply-and-save-one-liners
kristopolous · 1h ago
"was"? People still use it. Like a lot. I'm surprised
shmerl · 2h ago
Very cool successor of Norton Commander idea.
ilvez · 2h ago
Volkov Commander anyone?
JdeBP · 2h ago
If we're going to individually name every Orthodox File Manager, we are going to take some while. (-:
xiphias2 · 1h ago
You mean like FAR commander? ;)
lepicz · 1h ago
volkov was a great virus detector

its size was right at the edge of segment (64k) so when a virus appended to the .com binary, volkov stopped working

selcuka · 44m ago
Unfortunately there were also badly written, overwriting viruses that destroyed the host.

I made a COM-to-EXE convertor back in time so that I can compress them with LZEXE (I don't remember anything about it, but I guess I just prepended an empty relocation table). It would have been interesting to incorporate that functionality in a virus.

tyfon · 42m ago
I still use volcov commander on my dos machines :)

And MC on the *nixes of course.

auselen · 1h ago
I remember asking to my friend how do you use ‘nc’ in Linux and he answering “type ‘mc’”.
Ringz · 40m ago
If only you could redefine the keyboard shortcuts...
JNRowe · 17m ago
You can, it even ships with two files you can use as examples in mc.{emacs,vim}.keymap. The vim one has my favorite comment in a config file:

    [editor]
    # No remapping, just use vim instead of mcedit
Given that you can specify the bindings config to use at startup with --keymap you can even configure task specific sets of bindings. This combined with extfs and custom menus makes it a great way to make a personal interface to non-file data sources too.
EbNar · 1h ago
Great FM. I still use it consistently, especially when dealing with a large number of files.
latchkey · 1h ago
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.

mongol · 32m ago
I think Miguel's greatest legacy is starting the Gnome project.
roywashere · 1h ago
And who started Gnome Desktop! That always strikes me as funny. That he made the ultimate tool for in the terminal, and then move on to write a desktop environment
latchkey · 1h ago
It was kind of the evolution of the time though. We were coming from dumb terminals hooked up to VAX/VMS and Ultrix boxes with kermit, to computers that had a tcp/ip stack and could actually do graphics.
cyberax · 1h ago
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.

bmackenty · 1h ago
Still used in Poland. I still manage some systems using mcedit.
faangguyindia · 1h ago
most of the russian programmers i worked with use this. Not sure if it's taught in university or something.
lepicz · 1h ago
Mouseless Commander :)
sigttou · 2h ago
Brings back great memories, used to be my default diff viewer for several years.
Nursie · 2h ago
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.

danielktdoranie · 2h ago
Okay, I’ll bite mate:

How do you know?

antonvs · 1h ago
They rm -rf'd the wrong directory, lost their dissertation, and used mc to recover it.
Nursie · 1h ago
Yeah, the answer was there in the question really :)

That was not a good day, about a week before submission was due. I unmounted the disk the second I realised what I'd done and started to look for guides on finding lost ext2 inodes. MC to the rescue!

ksynwa · 1h ago
mc can recover deleted files?
Nursie · 1h ago
Back in the 90s it certainly had some features that made it easier to do so, yes. On ext2 file systems (no journaling or other advanced features) it had some method to browse unlinked inodes that were still on disk so you could recover them. They’d then show up in “lost+found”.

If you were quick and unmounted as soon as you had realised what you’d done, and the space had not been re-used for anything, you could often get the file back because rm just unlinked the inodes on ext2 IIRC.

I imagine that the commands it used under the hood were accessible to anyone with the right know-how, but at the time that’s not something I had, and all the guides started with “use midnight commander” so I did :)

(Saying “only way” to recover might be a stretch, it’s true)

inoffensivename · 2h ago
Can I get it in a Docker container?
sira04 · 14m ago

  docker run --rm -it -v "$(pwd):$(pwd)" -w "$(pwd)" nixery.dev/mc mc
kqr · 1h ago
I think this is one of the cases where Nix would be easier. To try it out without polluting your global namespace, nix run nixpkgs#mc.
p0w3n3d · 1h ago
It would be like having `ls` in a container
EbNar · 1h ago
I guess so, but what would be the use case for it?
batrat · 51m ago
why bother? I use mine in my AI powered, headless, kubernetes cluster
BlaDeKke · 1h ago
This is not a chat client.
serf · 1h ago
unraid has a docker container for Krusader - same thing different flavor, why not.
balamatom · 1h ago
Yes. Probably even a distroless one.
qalmakka · 2h ago
Lol. Realistically speaking, you'd have to bind mount your entire home for it to be usable then
fulafel · 1h ago
Maybe you're just looking to shell around in your container deployed in a pod somewhere.
jalk · 25m ago
That should be doable with `kubectl debug ...` - e.g. attach an ephemeral sidecar container with mc to already running pod. And you would ofc. configure that in K9S as a plugin to easily launch it :)
fithisux · 2h ago
Fun fact, on Windows I stopped using File Explorer and use Midnight Commander.

Now that I am more into the command line, I may need to give it a try.

razodactyl · 1h ago
xtgold?
thristian · 8m ago
You might be interested in YTree (https://www.han.de/~werner/ytree.html), UnixTree (https://www.unixtree.org/), or linuXtree (https://stahlke.org/dan/lxt/).