Skip to content

10 Terminal Tools That Feel Like Cheating (Start With croc)

Send any file between two computers with one command, jump to any folder, search anything instantly. 10 free terminal tools every developer should know, with the exact commands.

10 Terminal Tools That Feel Like Cheating (Start With croc)

Most developers use maybe five terminal commands. Meanwhile, there is a whole shelf of free, open-source tools that turn ten-minute chores into one line. This guide gives you ten of them — with the exact command that makes each one feel like cheating. Every tool here is free, open source, and installs in seconds.

1. croc — send any file between two computers, one command

The problem: you need to move a file from your laptop to another machine. So you email it to yourself, or upload it to Drive, or hunt for a USB stick.

The cheat: croc (37k+ stars, MIT). It sends files or whole folders between any two computers — Mac to Windows, Linux to Mac, anything to anything — end-to-end encrypted, with no account and no cloud drive.

Install (macOS; see the repo for Windows/Linux):

brew install croc

On the sending machine:

croc send deck.pdf

croc prints a short code phrase, something like 8142-blithe-cosmic-lava. That phrase is the connection — it is used to derive the encryption key (a scheme called PAKE), so only someone who has the phrase can receive the file.

On the receiving machine:

croc
# it asks: Enter receive code: → type the phrase

Or in one line: CROC_SECRET="8142-blithe-cosmic-lava" croc. (You may have seen the shorter croc <code> form in videos — that needs “classic mode” enabled with croc --classic, which croc itself warns is slightly less safe because the code becomes visible to other local processes. The prompt or env-var way is the right habit.)

The file transfers directly when possible, or through an encrypted public relay when it can’t. Two honest notes: the default relay is community-run — your data passes through it encrypted, but for genuinely sensitive files croc lets you self-host your own relay in one command. And the code phrase is single-use — each send generates a new one.

2. zoxide — stop typing long paths

z lms        # jumps to ~/projects/deployu/deployu-lms-app

zoxide learns the folders you actually use. After a day of normal work, z <any fragment> teleports you there. Install: brew install zoxide, then add eval "$(zoxide init zsh)" to your .zshrc.

3. fzf — fuzzy-search everything

# press Ctrl+R and type any fragment of an old command

fzf replaces “press up-arrow forty times” with instant fuzzy search over your entire shell history — and over filenames with Ctrl+T. Install: brew install fzf, then run the bundled setup: $(brew --prefix)/opt/fzf/install.

4. bat — cat, but readable

bat server.py

Syntax highlighting, line numbers, git-change markers — in the terminal. When you just want to look at a file, bat beats opening an editor. Install: brew install bat.

5. tldr — man pages, minus the 400 lines

tldr tar

Every tldr page is just the five examples you actually came for (“extract a tar.gz” — there it is). Install: brew install tlrc.

6. ncdu — find what is eating your disk

ncdu ~

An interactive disk-usage explorer: arrow keys, sorted by size, delete right from the UI. The fastest answer to “why is my disk full?” Install: brew install ncdu.

The terminal is a superpower — if you practice on real systems

DeployU courses put you on real cloud servers and real AWS accounts, not videos. Learn the commands by running them where it counts.

7. jq — surgery on JSON

curl -s https://api.github.com/repos/schollz/croc | jq '.stargazers_count'

Every API speaks JSON; jq lets you slice it in one pipe instead of writing a script. Learn three patterns — .field, .[], and select() — and you can dissect almost any response. Install: brew install jq.

8. httpie — curl for humans

http POST localhost:8443/login username=shiv

Readable requests, pretty-printed colored responses, JSON by default. For testing your own APIs it is dramatically faster to type than curl. Install: brew install httpie.

9. entr — re-run anything when files change

ls *.py | entr -c python3 tests.py

Save a file → your tests re-run instantly. No framework, no config — works with any command and any language. Install: brew install entr.

10. nettop — see who your Mac is talking to

nettop -m tcp

Built into macOS: a live view of every process making network connections and how much data each is moving. Great for “what is uploading right now?” moments — and a good habit for anyone who cares about privacy.

The pattern behind all ten

Each of these tools does one thing, does it in one line, and does it better than the “normal” way. That is the terminal’s whole promise. Pick two from this list, use them for a week, and they will be muscle memory — starting with croc, because the first time a file lands on the other machine before your friend finds the Drive upload button, you will be sold.

From terminal tricks to production skills

DeployU turns command-line comfort into deployable, hireable skills — real servers, real AWS, real projects for your portfolio.