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 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
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 +
Zsh... typing cd +
Path expansion
Bash... typing cd /u/l/b +
Zsh... typing cd /u/l/b +
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.
To search...
To search...