The desktop environment with its bundle of programs sharing a common graphical user interface (GUI) remains a firm favorite with users. Not surprising really given that a good desktop environment makes computing fun and simple. The graphical desktop environment has become so ingrained in almost everyone’s computer activities that it might seem the command line will wither away. Yet, there is still an important role to play for the humble command-line interface (CLI).
The CLI provides a way of interacting with a computer program where the user (or client) issues commands to the program in the form of successive lines of text (command lines). This way, the user gains full control over the operating system. There are many advantages in using a CLI application. They are generally frugal in using system resources, they are fast in operation, offer great scripting opportunities, and can be extremely powerful and flexible. Typing commands into a terminal or the console may appear mundane, but with the right tools, the command line can be incredibly powerful.
The whole is greater than the sum of its parts is a very famous quote from Aristotle, a Greek philosopher and scientist. This quote is particularly pertinent to Linux. In my view, one of Linux’s biggest strengths is its synergy. The usefulness of Linux doesn’t derive only from the huge raft of open source (command line) utilities. Instead, it’s the synergy generated by using them together, sometimes in conjunction with larger applications.
The cd command is a command-line OS shell command used to change the current working directory. A directory is a logical section of a file system used to hold files. Directories may also contain other directories. The cd command can be used to change into a subdirectory, move back into the parent directory, move all the way back to the root directory or move to any given directory.
The purpose of this article is to identify some tiny but useful tools that complement the cd command. They help users to navigate faster around the filesystem, and increase productivity when using the shell. We feature 27 tools each with their own portal page, a full description with an in-depth analysis of its features, together with links to relevant resources.
We make the following recommendations. Only free and open source software is eligible for inclusion.
Learn more about each tool. Click the links in the table below to read our reviews, details of features and screenshots, together with other resources.
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 |
enhancd | Next-generation cd command |
fzy | Simple, fast fuzzy finder for the terminal |
Navita | Rapid directory traversal |
walk | Simple and minimalistic terminal navigator |
v | z for vim |
fasd | Command-line productivity booster. It seeks inspiration from autojump, z and v |
cdwe | cd with env vars |
kn | Navigate folders quickly |
jmp | The superior cd |
slingshot | Lightweight tool to browse files in the terminal |
pazi | Fast autojump helper |
qcd | Quickly change directory |
fz | Adds fuzzy search to tab completion of z |
menucd | Directory browser and changer |
ff | Manage favourite folders |
fastdiract | Quick shell navigation and command execution |
zm | cd for lazy people who don’t care where they are, or how to get where they’re going |
pm | Switch between projects |
nav | Quickly navigate through directories |
This article has been revamped in line with our recent announcement.
All the CLI tools in this series.
Alternatives to CLI tools |
---|
age // awk // bc // cal // cat // cd // chmod // cksum // cloc // cmp // compress // cp // cron // curl // cut // date // dd // df // diff // dig // du // fdisk // find // ftp // grep // gzip // hexdump // history // jq // kill // less // locate // ls // lsof // make // man // more // mv / ping // ps // psql // rename // rm // sed // split // ssh // strings // sudo // sysctl // tail // talk // tar // telnet // time // top // touch // traceroute // tree // uname // uniq // uptime // vi // watch // Wget // who // whois // xargs |
Read our complete collection of recommended free and open source software. Our curated compilation covers all categories of software. The software collection forms part of our series of informative articles for Linux enthusiasts. There are hundreds of in-depth reviews, open source alternatives to proprietary software from large corporations like Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. There are also fun things to try, hardware, free programming books and tutorials, and much more. |
There’s cdwe, a cd wrapper.
I’m scheduled to complete an update of this roundup in the next week or so. cdwe will be added. Thanks for your suggestion Pierre!
the heck is cdwe??
Click the link to cdwe in the table above and you’ll see what it is.