Friday, August 22, 2008

Why use Shell in Ubuntu

The real measure of a Linux user expertise comes from your abilities at the shell. In our modern age, the GUI is mistakenly considered “progress.” For instance, users of the Microsoft and Apple-based operating systems are quite used to using a mouse to navigate and perform various tasks. While it’s handy in certain situations—it would be difficult to imagine image editing without a mouse, for example—in many other situations, such as when manipulating files, directly typing commands is far more efficient.

Most modern Linux distributions prefer you to use the GUI to do nearly everything. This is because they acknowledge the dominance of Windows and realize they need to cater to mouse users who might not even know the shell exists (and, of course, programs like web browsers would be unusable without a GUI). To this end, they provide GUI tools for just about every task you might wish to undertake. Ubuntu is strong in this regard, and you can configure a lot of things from the desktop.

However, it’s well worth developing at least some command-line shell skills, for a number of reasons:

It’s simple and fast. The shell is the simplest and fastest way of working with Ubuntu. As just one example, consider the task of changing the IP address of your network card. You could click the Systems menu, then the Administration option, then the Network option, and then double-click the entry in this list relating to your network card. That will take at least a minute or two if you know what you’re doing, and perhaps longer if it’s new to you. Alternatively, you could simply open a shell and type this:
ifconfig eth0 up

It’s versatile. Everything can be done via the shell—from deleting files, to configuring hardware, to creating MP3s. A lot of GUI programs actually make use of programs you can access via the shell.

It’s consistent among distributions. All Linux systems have shells and understand the same commands (broadly speaking). However, not all Linux systems will have Ubuntu’s graphical configuration programs. SUSE Linux uses its own GUI configuration tool, as does Mandrake Linux. Therefore, if you ever need to use another system, or decide to switch distributions, a reliance on GUI tools will mean learning everything from scratch.
Knowing a few shell commands will help you get started instantly.

It’s crucial for troubleshooting. The shell offers a vital way of fixing your system should it go wrong. Your Linux installation might be damaged to the extent that it cannot boot to the GUI, but you’ll almost certainly be able to boot into a shell. A shell doesn’t require much of the system other than the ability to display characters on the screen and take input from the keyboard, which most PCs can do, even when they’re in a sorry state. This is why most rescue floppies offer shells to let you fix your system.

It’s useful for remote access. One handy thing about the shell is that you don’t need to be in front of your PC to use it. Programs like ssh let you log in to your PC across the Internet and use the shell to control your PC. For example, you can access data on a remote machine, or even fix it when you’re unable to attend the machine’s location. This is why Linux is preferred on many server systems when the system administrator isn’t always present on the site.

It’s respected in the community. Using a shell earns you enormous brownie points when speaking to other Linux users. It separates the wheat from the chaff and the men from the boys (or women from the girls). If you intend to use Linux professionally, you will most certainly need to be a master at the shell.

Seen in this light, learning at least a handful of shell commands is vital to truly mastering your PC.

The drawback when using a command-line shell is that it’s not entirely intuitive. Take for instance the command to change the network card’s IP address:
ifconfig eth0 up

If you’ve never used the shell before, it might as well be Sanskrit. What on earth does ifconfig mean? And why is there the word up at the end?

Learning to use the shell involves learning terms like these. Hundreds of commands are available, but you really need to learn only around 10 or 20 for everyday use. The comparison with a new language is apt because, although you might think it daunting to learn new terminology, with a bit of practice, it will all become second nature. Once you’ve used a command a few times, you’ll know how to use it in the future. When you become familiar with it, you’ll see that it is a beautiful concept. The shell is simple, elegant, and powerful.

>>> Read more about What Is Ubuntu BASH Shell? <<<

Source of Information : Beginning Ubuntu Linux - From Novice To Professional

No comments: