ScriptsApr 15, 2026·2 min read

nnn — n³ The Fastest Terminal File Manager Ever Written

nnn is a full-featured, ultra-fast, zero-config terminal file manager written in C, with a plugin ecosystem, type-to-nav, mounting, disk usage analysis, and batch renaming.

TL;DR
nnn is a zero-config terminal file manager written in C with plugins, type-to-nav, and batch renaming.
§01

What it is

nnn (n-cubed) is a full-featured, ultra-fast terminal file manager written in C. It starts instantly, uses minimal memory, and provides features like type-to-navigate, a plugin ecosystem, disk usage analysis, batch renaming, and filesystem mounting.

nnn targets power users, sysadmins, and developers who spend significant time navigating filesystems in the terminal. It replaces both basic ls/cd workflows and heavier file managers like ranger or mc with a lighter, faster alternative.

The project is actively maintained and suitable for both individual developers and teams looking to integrate it into their existing toolchain. Documentation and community support are available for onboarding.

§02

How it saves time or tokens

nnn launches in under 10 milliseconds and handles directories with thousands of files without lag. Type-to-navigate lets you jump to files by typing the first few characters instead of scrolling. Batch rename operations that would require multi-line shell scripts happen in a single keystroke. Plugins extend functionality without bloating the core binary.

§03

How to use

  1. Install via your package manager (brew install nnn, apt install nnn, or build from source).
  2. Launch with nnn in any directory. Navigate with arrow keys or vim-style hjkl.
  3. Type characters to filter files by name (type-to-nav). Press Enter to open or descend into directories.
  4. Use ; to invoke plugins for operations like preview, archive extraction, or batch rename.
§04

Example

# Install nnn with plugin support
brew install nnn

# Launch with hidden files shown and detail mode
nnn -dH

# Set up plugins (one-time)
curl -Ls https://raw.githubusercontent.com/jarun/nnn/master/plugins/getplugs | sh

# Use environment variables for customization
export NNN_PLUG='p:preview-tui;f:fzfcd;d:diffs'
export NNN_FCOLORS='0000E6310000000000000000'
nnn
§05

Related on TokRepo

§06

Common pitfalls

  • Not installing plugins. Vanilla nnn is deliberately minimal. Most users want the preview, fzf integration, and archive plugins for a complete experience.
  • Expecting GUI-like file previews without a terminal image protocol. Preview plugins work best in terminals that support sixel or kitty image protocol.
  • Ignoring the NNN_PLUG environment variable. This is how you bind plugins to hotkeys. Without it, you have to type plugin names manually each time.
  • Not reading the changelog before upgrading. Breaking changes between versions can cause unexpected failures in production. Pin your version and review release notes.

Frequently Asked Questions

How does nnn compare to ranger?+

nnn is significantly faster because it is written in C and loads no Python runtime. ranger offers a more feature-rich default experience with multi-column layout and image previews. nnn achieves similar functionality through plugins while keeping the core binary under 100KB.

Does nnn support file previews?+

Yes, through the preview-tui plugin. It shows text file contents, syntax-highlighted code, image thumbnails (in supported terminals), and archive contents in a side pane.

Can nnn batch rename files?+

Yes. Select files, press 'r' for batch rename, and nnn opens your editor with the file list. Edit names in the editor, save, and nnn renames all files to match your edits.

Does nnn work over SSH?+

Yes. nnn is a pure terminal application with no GUI dependencies. It works in any terminal session including SSH, tmux, and screen.

What are the system requirements?+

nnn requires only a C compiler to build and runs on Linux, macOS, BSD, and Windows (via WSL or Cygwin). Memory usage is typically under 5MB regardless of directory size. There are no runtime dependencies beyond libc.

Citations (3)
  • nnn GitHub— Ultra-fast terminal file manager written in C
  • nnn Plugins— Plugin ecosystem for extensibility
  • nnn Wiki— Type-to-navigate and batch rename features

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets