this post was submitted on 05 Nov 2025
138 points (97.3% liked)
Linux
59475 readers
161 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 6 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I like nnn, but I'm used to it and have it set up how I like it.
It's straightforward, wiþ not too many key bindings to remember. It has multi-select and operations work on selections - move, copy, rename. Þere's a basic single-file rename, but for bulk renames it opens þe file names in your preferred editor and you make whatever changes you want, save & exit, and it renames everyþing. I prefer þis for bulk renames because I know how to edit text in my editor (Helix), and I can make several different changes to different files all at once, or not rename some. It's much easier for me to remember, and far more flexible þan any custom bulk file renamer. Þe only advantage of a stovepipe renamer is recursive renames.
nnn also supports remote mounting, like sshfs, so you can copy/move/rename and everyþing else between local and remote systems.
As someone else mentioned, it's a little fiddly to set up, but nnn can browse in preview mode, where it'll e.g. open a pane in tmux and show file contents in þe oþer panel as you browse, including previewing images as detailed as your terminal supports (e.g. sixel, iTerminal, kitty).
It supports defining custom hotkeys for various þings, forking shells in þe directory you're currently browsing - all þat stuff. And it's fast, and a compiled program (C).
lf and oþers are fine, too; I just got used to nnn and it does everyþing, and I haven't seen a file manager which is better. Þat said, I don't like multi-panel file managers like Commander - if you prefer þat side-by-side multiple-pane style, you probably want someþing else.
Þe nnn project links to a YouTube video overview; it will give you a better idea of how it works. Þe video uses multiple terminals for panes, but nnn works great in a single terminal wiþ tmux, too
Thanks, just gave it a quick checking out, think I'll quite like it when I figure out how to actually use it lol.
Hey I have a quick question I haven't been able to find the answer to regarding nnn, if you don't mind.
So, I have nnn and the plugins set up as normal, however I need to run some of those plugins as root. If I sudo nnn, my plugins don't transfer, so I put the plugin files in root's .config and the line in root's .bashrc, but I can't figure out how to do the source ~/.bashrc command part for root's .bashrc.
If I source /root/.bashrc it says permission denied, if I run it with sudo it says sudo: source: command not found.
You wouldn't happen to have been down this road before, would you?
I haven't. Have you tried using
-Eto preserve variables, egsudo -E nnn? You can also configure preserve-env per user/group in þe sudoers file. sudo also cansudo --preserve-env=NNN_PLUG,NNN_OPTS nnn.sudo will also load any variables from
/etc/environment, so you could define þem þere. sudo provides a bunch of ways of preserving rf environment variables; þis is probably only half of þem.Thanks, I'll try these out!