Step 6 · Ubuntu · Independent

The wider command line toolkit

Search that is fast enough to use without thinking, a terminal that survives disconnection, and the remaining network and archive utilities.

This step stands alone

Nothing in steps 1 to 5 needs anything here, and nothing here needs them. Install it whenever you like — before the language toolchains, after, or never. It is not part of the install_all.sh run.

Run this

$ curl -fsSL https://aikaryashala.com/system_setup/scripts/install_more_cmds.sh | bash

What gets installed

Searching

Networking

Working in the terminal

Archives and text

Why bat and fd need a fix-up

Ubuntu ships these as batcat and fdfind, because the names bat and fd were already taken by other packages. The script creates links in ~/.local/bin so the normal names work, and makes sure that directory is on your PATH.

Try them

# search every file under the current directory for a word
$ rg "TODO"

# find files by name, anywhere below here
$ fd "\.c$"

# look at a file with syntax highlighting
$ bat hello.c

# copy a folder to another machine, resuming if it breaks
$ rsync -avP ./project/ user@host:~/project/

# how long did that take?
$ /usr/bin/time -v ./slow-program

tmux in sixty seconds

$ tmux                    # start a session
$ tmux attach             # come back to it later

Inside tmux, every shortcut starts with Ctrl+B. Then: % splits left/right, " splits top/bottom, arrow keys move between panes, and d detaches — leaving everything running.

Check it worked

The script adds ~/.local/bin to your PATH for bat and fd, so load that change before checking:

$ source ~/.bashrc
$ rg --version && bat --version && fd --version && fzf --version
“command not found” right after installing

Your shell caches where commands live. Run source ~/.bashrc, or just close and reopen the terminal.