Summary

The Linux terminal can be a barrier when you start exploring Linux. Initially, I pasted commands from forums, but avoided going beyond what the forums showed, for fear that I might break something. It’s been several years, and I no longer approach the terminal with this same fear or caution, but that change didn’t come only from studying commands. I found and installed small terminal tools that handle the hard part for me, and they don’t require any programming knowledge. fzf Dig up any old command by typing a few letters It’s easy to remember what a command did, but you don’t always remember how you wrote it. Now when I press Ctrl+R and type a fragment like rsync or ffmpeg, fzf gives me a list of my shell history that narrows with every letter. The search still works even when the words are not in order or when there is a typo. Once I pick a result, it’s placed on the prompt without running it, so there’s no cost to browsing. Sometimes I edit the command before running it, or just hit Escape and walk away. Run any of these commands to install fzf: | Linux distribution | Install command | |---|---| | Ubuntu, Linux Mint, Debian | | | Fedora | | | Arch Linux, Manjaro | | On my Linux Mint machine, installing fzf via apt doesn’t enable the keyboard shortcuts, so I had to add the line below to ~/.bashrc so that Bash loads fzf’s keyboard bindings whenever it starts: source /usr/share/doc/fzf/examples/key-bindings.bash zoxide A terminal that learns which folders you live in Typing cd ~/projects/web/portfolio-site/src/components becomes tiresome. With zoxide, I land in the same place by typing z port comp from anywhere in the system. It isn’t magic; zoxide simply learns your frequently used directories. If you run zoxide query —list —score , you’ll see all the folders that it has learned. It ranks them by a score that weighs how often and how recently you visit a folder. The folders you visit daily stay at the top with the less visited ones below. When I saw this list, it felt like a nice record of my own habits. You can narrow the search by including extra words, which is why running z port comp is very effective even when two folders share part of a name. zoxide only knows folders you’ve visited since installing it, and it needs this line in ~/.bashrc before the z shortcut/command is available: eval ”$(zoxide init bash)“. Run any of these commands to install zoxide: | Linux distribution | Install command | |---|---| | Ubuntu, Linux Mint, Debian | | | Fedora | | | Arch Linux, Manjaro | | tldr Examples first, options later I don’t trust my own memory with find. Usually I just want to locate a file by name, and the find man page is just too much. The solution is tldr find. This gives entries that are in plain English and include ready-made commands. But the placeholders are among the most useful. Outputs may include things like {{root_path}} and {{.ext}}, showing you the command’s shape. This way, rather than memorizing an exact line, I learn what to swap in. I often run a command that looks like this: find {{root_path}} -name ‘{{.ext}}’ It simply tells the tool to “start searching from this folder, and match names that fit this pattern.” It’s important to read a command before running it because the pages are community written. These commands install tldr: | Linux distribution | Install command | |---|---| | Ubuntu, Linux Mint, Debian | | | Fedora | | | Arch Linux, Manjaro | | On Mint, installing tldr with pipx requires that pipx be installed first. ncdu Surface what occupies the disk space You can run out of storage without a concrete explanation of what occupies the space. Running the command ncdu ~ will scan your home folder, listing its contents by size with the largest at the top. This gives instant context to what occupies your drive. To investigate the folders, you can use the arrow keys, and press Enter to open a folder. When I scanned my computer, here’s what showed up: | Location | Size | What it turned out to be | What I did | |---|---|---|---| | ~/projects | 5.8GiB | My projects folder, the largest directory in my home folder | Used ncdu to see exactly where the space was going | | ~/.cache | 2.0GiB | Cached application data that had piled up over time | Treated it as worth investigating before deciding what to clear | Once I saw the projects folder, I wasn’t surprised; however, ~/.cache was easy to miss. ncdu simply surfaces where the weight sits. With the information it provides, you can decide what action to take. Hitting d within ncdu will permanently delete the file or folder (no trash/recovery option). For a complete system scan, run: sudo ncdu -x / | Linux distribution | Install command | |---|---| | Ubuntu, Linux Mint, Debian | | | Fedora | | | Arch Linux, Manjaro | | btop See what “slow” actually looks like You may picture the terminal as a wall of green text, but btop isn’t like that. It offers a colorful dashboard displaying live graphs for CPU, memory, disks, and network. The best part is that the tool responds to mouse clicks. I like to open it while the machine is idle, so that I have a good idea of the baseline. After that, when I repeat an activity that slows the computer down, I can watch which graph changes to identify what’s draining resources. CPU load, the memory panel, and the top process are the three elements I monitor most closely. Looking at the “Available” value shows me how much headroom the computer has. Pressing t gives the tree view that makes it easier to spot which app a process belongs to. Pressing k from within btop ends the process, but I avoid touching anything that I don’t recognize. | Linux distribution | Install command | |---|---| | Ubuntu, Linux Mint, Debian | | | Fedora | | | Arch Linux, Manjaro | | The right tools make the difference My increased efficiency didn’t come from memorizing commands, but from learning which tools help me do the most. I built my Linux terminal arsenal over time, and these five have become an indispensable base I always turn to. None of these required writing a script.

By Afam Onyimadu

Original Article