Shell tools to improve productivity

I love working in the terminal. I’m not a shortcut wizard, I barely remember a few, but I still love working in the terminal. Here is the list of apps and configurations I made over time to improve my shell.

Bat

Need to read the content of a file? Bat helps with with syntax highlighting, line numbers, git integration, and many other options.

Colored logs

Reading log files is part of every dev life, but why not making the task simpler with syntax highlighting? Tailspin to the rescue. docker logs -f <containter_name> | tspin

Easier file searches

find is a powerful tool, but the syntax is quite complex for simple search tasks. fd makes search simpler as typing fd specs to find all files and directories containing the word specs in current dir and subdirs, case insensitive. Or fd -e md to search for all the files ending with a .md in current dir and subdirs.

List files and dirs

eza replaces ls with syntax highlighting and git status out of the box, the possibility to see files and dirs and a tree format, order files by different attributes (name is the default, but then size, extension, etc). eza -T generates a nice tree view of all files and subdirs in the current path.

eza output

With a simple alias l="eza -l" and alias lt="eza -lT" navigating the filesystem will be much easier!

Who is using disk space?

Wondering how the disk space is used? dust replaces du and make the discovery very easy. For example, dust -z 1G searches for all files and folder better than 1Gb in the current dir.

For a file-system level overview, duf

ncdu offers interactive browsing of directories, and the possibility to remove files and dirs on-the-fly.