Let me tell you my experience how I came to know about the command line. I was a windows user and had just head of Linux and never used it before. So when I started college I came to know about Linux. We had our Linux User Group (http://glug.nith.ac.in/) community and I attended it’s workshop and I came to know how much powerful command line could be.
There are various things you could do in Windows/ Mac using GUI like -
- Setting user permissions. You will click on the folder and select the users which could access the files of the folder. (You could do it using chmod in the command line )
- Starting a service like a apache web server in Windows you would have to open up WAMP or XAMPP ( You could just do this in the command line sudo service start httpd) .
- If you need to install something you need to download and go through the installation process of some tool/software. (You could use apt-get install if you are using Ubuntu distro )
- Over the time deleting, copying, accessing, moving, extracting the files / folders from the command line becomes easier and faster. You will feel like never using GUI again. You will feel like a power user.
Now these are just small things. Command line is a lot more powerful when you dive into command line tools and what they can do.
Take an example that you have made a website or some project and you want to deploy it to a remote server and if you want it to do it using command line then you must have to use tools like ssh to remotely access your remote server.
If you need to make changes directly into the server then there is no GUI. (I mean site provide GUI but they take a lot of time to do small things ). To make changes into the server you can use command line text editors like vim and emacs and nano. Many good developers use these text editors as a full time IDE.
You need to learn git when you want to add version controlling to your project.
You could almost anything from the command line.
Listen music - sudo apt-get install sox
Tweet - https://github.com/sferik/t
Prank your friend - sudo rm -rf /
(Don’t use this lol)
When you will be reading most of the tutorial on the internet or learning some resource then the author already takes the assumption that you have a basic knowledge of the command line
Command line is a must for being a good dev and will certainly will help you in the long run.
Started learning. It will take time but you will thank me later.