Linux console file managers can be very helpful in day-to-day tasks, when managing files on a local machine, or when connected to a remote one. The visual console representation of the directory helps us quickly perform file/folder operations and saves us some time.
In this article, we are going to review some of the most frequently used Linux console file managers and their features and benefits.
1. GNU Midnight Commander
Midnight Command, often referred to simply as mc
and is one of the top file managers discussed in this article. Mc comes with all kinds of useful features, aside from copying, moving, delete, and creating files and directories you can change permissions and ownership, review archives, use it as an FTP client, and many more.
You can find our full review of the Midnight Commander a console-based file manager.
To install Midnight Commander you can use the following commands:
$ sudo apt install mc [On Debian, Ubuntu and Mint] $ sudo yum install mc [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/mc [On Gentoo Linux] $ sudo apk add mc [On Alpine Linux] $ sudo pacman -S mc [On Arch Linux] $ sudo zypper install mc [On OpenSUSE]
2. Ranger Console File Manager
Ranger is another top choice when looking for a console file manager. It has a vim-like interface, a preview of the selected file or directory, bookmarks mouse support, and tabbed view.
You can find our full review here: Ranger – a nice console file manager with vi key bindings.
To install Ranger you can use the following commands:
$ sudo apt install ranger [On Debian, Ubuntu and Mint] $ sudo yum install ranger [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/ranger [On Gentoo Linux] $ sudo apk add ranger [On Alpine Linux] $ sudo pacman -S ranger [On Arch Linux] $ sudo zypper install ranger [On OpenSUSE]
3. Cfiles Fast Terminal File Manager
Cfiles is a fast terminal file manager written in C and uses ncurses, similar to ranger, it also uses vi keybindings. It has a few dependencies such as cp, mv, fzf, xdg-open, and others. While it is lightweight, its installation requires a few more steps:
To install cfiles, first, you need to install development tools using the following commands:
$ sudo apt-get install build-essential [On Debian/Ubuntu] $ sudo yum groupinstall 'Development Tools' [on CentOS/RHEL]
Next, clone the cfiles repository and install it using the following commands.
$ git clone https://github.com/mananapr/cfiles.git $ cd cfiles $ gcc cf.c -lncurses -o cf $ sudo cp cf /usr/bin/ #Or copy somewhere else in your $PATH
A more detailed review of cfiles can be found here: Cfiles a terminal file manager for Linux.
4. Vifm Console File Manager
Vifm is another command line-based file manager, which uses a curses interface. This one however copies some features from mutter. If you are a Vim user, you won’t need to learn a new set of commands to work with vifm. It uses the same keybindings and also has the ability to edit several kinds of files.
Similar to other console file managers, it has two panes and supports auto-completion. It also supports various of different views for the comparison of file trees. You can also execute remote commands with it.
To install Vifm you can use the following commands:
$ sudo apt install vifm [On Debian, Ubuntu and Mint] $ sudo yum install vifm [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/vifm [On Gentoo Linux] $ sudo apk add vifm [On Alpine Linux] $ sudo pacman -S vifm [On Arch Linux] $ sudo zypper install vifm [On OpenSUSE]
A more detailed review of vifm can be seen at Vifm command line-based file manager for Linux.
5. Nnn Terminal File Browser
Nnn is the fastest console file manager in our list. While it has fewer features compared to other file managers, it is extremely lightweight and it is closest to a desktop file manager on what you can get on the console. The interaction is simple and allows new users to easily get used to the terminal.
To install nnn, you can use the following command:
$ sudo apt install nnn [On Debian, Ubuntu and Mint] $ sudo yum install nnn [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/nnn [On Gentoo Linux] $ sudo apk add nnn [On Alpine Linux] $ sudo pacman -S nnn [On Arch Linux] $ sudo zypper install nnn [On OpenSUSE]
A more detailed preview of nnn can be found at Nnn – a fast and friendly terminal file browser.
6. Lfm Last File Manager
Lfm shortened for Last File Manager is a curses-based console file manager written in Python. It can be used with 1 or 2 panes. It has some useful features such as filters, bookmarks, history, VFS for compressed files, tree view, and direct integration with the find command, grep utility, df command, and other tools. Customized themes are also available.
To install Lfm, you can use the following command:
$ sudo apt install lfm [On Debian, Ubuntu and Mint] $ sudo yum install lfm [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a sys-apps/lfm [On Gentoo Linux] $ sudo apk add lfm [On Alpine Linux] $ sudo pacman -S lfm [On Arch Linux] $ sudo zypper install lfm [On OpenSUSE]
You can also install lfm using the pip command:
$ sudo pip install lfm
7. lf – List Files
Lf – “List files” is a command line file manager written in Go, inspired by Ranger. Originally it was meant to fill the gaps of missing features that the ranger had.
Some of the main features of lf are:
- It’s cross-platform – Linux, OSX, Windows (only partial).
- Single binary without any runtime dependencies.
- Low memory footprint.
- Configuration with shell commands.
- Customizable keybindings.
Future plans include the activation of mouse control.
To install lf simply download the binary-related build for your OS from the lf releases page.
8. WCM Commander
The last in our list is WCM command which is another cross-platform console file manager. The authors of the WCM commander meant to create a cross-platform file manager that mimics the features of Far Manager.
It has a built-in terminal, text editor and viewer, syntax highlighting, virtual filesystem, and a very fast user interface. Mouse support is also enabled. The package for each OS can be found on the WCM download page.
9. Walk Terminal File Manager
Walk is a terminal-based navigator that serves as an alternative to the traditional ls and cd commands, It allows for quick navigation using fuzzy searching, cd integration is quite simple, and you can open Vim directly from the walk.
Conclusion
This was our short presentation on some of the top Linux console file managers. If you think we have missed one or like some of them more, please share your thoughts in the comment section.
What about Walk file manager https://github.com/antonmedv/walk?
@Anton,
Thank you for pointing that out! ‘Walk‘ is indeed a noteworthy terminal file manager. We’ll consider adding it to the list in our next update.
Your feedback is appreciated!
I just brew’d ranger into osx and it seems helpful, thanks!
I know if I want to shell in remotely and not fiddle with the inadequacies in vnc/etc from a slower connection that this is pretty great. Haters gonna h8. :D