icd is a shell utility that makes changing directories quicker and more convenient.
It replaces the usual cd workflow with an interactive selector for previously visited paths, helping you jump around the filesystem without repeatedly typing long directory names. The project is lightweight, integrates with popular Zsh plugin managers, and also includes support for the Fish shell.
This is free and open source software.
Key Features
- Maintains a persistent directory history in
~/.history.icd. - Accepts an existing directory as an argument and resolves it to an absolute path before changing directory.
- Lets you pass a query string to pre-filter results in the interactive selector.
- Uses ripgrep for matching when available, with a configurable fallback to grep.
- Avoids adding duplicate entries to the history file and skips temporary
/tmppaths.
Website: github.com/g-plane/icd
Support:
Developer: Pig Fang
License: MIT License

Related Software
| Shell tools | |
|---|---|
| fzf | Command-line fuzzy finder for your shell |
| zoxide | Smarter cd command, inspired by z and autojump |
| broot | Reviewed under our Excellent Utilities series |
| McFly | Also reviewed under our Excellent Utilities series |
| z | Maintains a jump-list of the directories you actually use |
| autojump | Offers a fast way to navigate your filesystem |
| z.lua | Helps you navigate faster by learning your habits |
| HSTR | Bash and zsh shell history suggest box |
| Zsh-z | Fast directory jumping based on frecency |
| enhancd | Next-generation cd command |
| fzy | Simple, fast fuzzy finder for the terminal |
| Navita | Rapid directory traversal |
| Jump | Quick and fuzzy directory jumper |
| walk | Simple and minimalistic terminal navigator |
| lacy | cd alternative that makes navigating much more efficient |
| DF-SHOW | Directory File Show |
| fz | Adds fuzzy search to tab completion of z |
| pazi | Fast autojump helper |
| jumper | Files/directories jumper |
| cdhist | Linux shell cd history directory stack |
| icd | Shell utility that makes changing directories quicker and more convenient |
| SD | Dynamic directory navigation from the command line |
| Dongle | Move around deep directory trees |
| cdwe | cd with env vars |
| fastdiract | Quick shell navigation and command execution |
| zm | cd for lazy people |
| slingshot | Lightweight tool to browse files in the terminal |
| qcd | Quickly change directory |
| nav | Quickly navigate through directories |
| menucd | Directory browser and changer |
| kn | Navigate folders quickly |
| jmp | The superior cd |
| gump | Smarter cd command |
Read our verdict in the software roundup.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.