Getting into the Terminal (command line) is one of their worst nightmares for any developer at his beginning. But once you hang on it, then the terminal would be the best friend for every developer. That’s why you should master it sooner or later in your career. This blog will provide you the top 10 command line tools that would make your life easier.
Why should use the terminal when you can get it done using a GUI?. This is the first question you will have when you’re entering the zone. Imagine processing a large file or importing a huge database file. You can’t do that using a GUI tool. The GUI is not just good enough at handling these operations. That is where terminal comes in.
Using terminal, you can do a variety of tasks efficiently and easily than using a GUI. If you’re still not using terminal, I suggest you to give an honest try for all tasks for a week, and then surely you’ll love it once you completely understood. However, if you’re already in love with the terminal, I would like to share my love on terminal by listing out top 10 tools I use every day in my development which make’s my life easier and hoping that would make yours too.
Tmux is a terminal multiplexer, Imaginer you’re logged into a server using SSH and want to open another window of the same server. Usually, you would open a new tab, and then again you need to connect using ssh.
Once connected, again you’ll have to navigate to the directory you’re working. Enter tmux, and you can create a new window within the current terminal session without having to reconnect to the server. You can split your terminal like below using simple keyboard shortcuts as well. It’s not just limited to that, Tmux is very powerful, that it’ll change the way you use terminal forever.
2) CanIUse CMD
The web development has changed drastically, and we always want to check that we’re staying up to date while maintaining backward compatibility. We often use caniuse.com for checking whether all browsers support a specific feature we’re going to implement. While you can do this using a browser the above npm-package allows you to do it from your CLI like below.
This list won’t get completed without adding Vim to the list. Vim is a great text editor which can improve your speed drastically. It might seem hard to use it at the beginning but once mastered, then you’ll be faster than ever. Vim is readily available in almost all platform which means you can buy a new server and without installing anything vim will be there and you can start working with it. There are many ways to use vim, but I consider vim as a language as the best way, see this excellent video to learn more about it.
Imagine a situation where you want to serve your localhost to public web, let’s say responsive design. You can use ngrok to create a tunnel for your localhost and access it using a secure URL from anywhere. It would be great for demo purpose and responsive testing in mobile or different systems.
myCli is another awesome tool which would definitely make your life easier. Imaging logged into a remote server and trying to figure out the column or table names from your old project, myCli will save you from that by providing contextual autocompletion for MySQL and MariaDB. You can use your previously set mysql_conf_editor configurations to connect using myCli.
Have you ever gone through the man pages of your terminal? If yes, Then you can relate to it, the man pages are excellent that they’ll provide you the clear details of every command and options. But when you just want to know the simple things to do, then you would have to read through the pages as it quickly becomes tiresome. Tldr actually fixes this issue by providing information as minimal as possible along with the practical example of commands. Install it and compare the output it provides with man pages output, and you’ll really love it. As a sample, I attached the output for vim from man and tldr for you.
We’ve all been there searching how to do a thing using a terminal in google. But Linux got you covered, and Apropos is a shell tool which will return the related commands when you enter a search query with this command.
It uses the description part of the man page for each command to match and gives you the results. It may not be as sophisticated as Google but it does the job very well, and it is built- In.
Climate is a collection of various commands which are very useful for developers. Climate has commands like,
Climate lock – Locks your system Countdown – Initialize a countdown timer Stopwatch – A stopwatch in your terminal
Trash-size – Know your trash size
It has a lot of other commands as well. But the above are just my favorites.
You can do these things without climate or with some other tool, but climate gives you the power at the disposal of just one command which will make you faster in your terminal.
Hub is a command line wrapper which makes it super easy to work with Git and Github. It makes things easier like creating pull requests because usually, you’ll have to visit GitHub on the browser to create a PR, but hub allows you to do it from the terminal with a single command. There is a lot more on the hub which you can find on their homepage.
Okay, the last one is not a tool, but it’s a small trick which helps you often in any situation. It’s a terminal command that would rerun the last command you’ve entered in the terminal. For instance, imagine a situation that you’ve typed a command without sudo, and if it got rejected, then you can just type sudo !! to rerun that command with all the sudo privileges.
Hope these tools will help you to increase your productivity and also make you to remain like a Real Gem in development arena. Try all these Command line tools and let us know your awesome results and impressions in the comment section.