Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save brunoric/a18a9114ea1f69ed0304c6c9b6f34abd to your computer and use it in GitHub Desktop.
Save brunoric/a18a9114ea1f69ed0304c6c9b6f34abd to your computer and use it in GitHub Desktop.
Increasing your productivity with an awesome CLI setup - FZF

Increasing your productivity with an awesome CLI setup

If you are a software developer, using *nix systems as your development environment, you may know that frequently we need to use the command line interface. For some, could be just to install and setup the development enviroment. Others, like back-end developers, uses it more often: to automatize daily tasks, to access remote environtments, to access logs, extract data, use a version control system, etc. Regardless how much time you spent using CLI or what is your level in SHELL scripting, with the right tools you can increase a lot your productivity.

I will start this post series talking about Z Shell, Oh my Zsh and fzf. The plan is have a lot of small screencasts with the behaviors and commands. Let's see how it goes. =)

Zsh

Zsh is a shell designed for interactive use, although it is also a powerful scripting language. Many of the useful features of bash, ksh, and tcsh were incorporated into zsh; many original features were added. The introductory document details some of the unique features of zsh. It assumes basic knowledge of the standard UNIX shells; the intent is to show a reader already familiar with one of the other major shells what makes zsh more useful or more powerful. - Zsh website official description

Why Zsh over Bash?

Some would say that Zsh is more modern, others that is just different, but I prefer Zsh because some specific features. Let's see some features in action, both for Bash and Zsh.

Auto completion

Bash... typing cd +

Bash auto-completion

Zsh... typing cd +

Zsh auto-completion

Path expansion

Bash... typing cd /u/l/b +

Bash path expansion

Zsh... typing cd /u/l/b +

Zsh path expansion

fzf

I am using fzf for almost two years. It is a command-line fuzzy finder, to search files into your filesystem hierarchy, reverse search into your command history, select lines from any command output and more.

Command history search

To search...

Filesystem hierarquy search

To search...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment