Linux InterfacesA Brief Introduction to the Command Line and the GUIBy Carolyn Gillay and Patricia SullivanThis article is an excerpt from Linux User's Guide: Using the Command Line and Gnome Red Hat Linux, the forthcoming book by co-authors Carolyn Z. Gillay and Patricia L. Sullivan. Download the PDF file for this article.Linux provides two major ways of interacting with the computer, the command line and the (graphical user interface). The command line is a character-based interface, where you will see a command prompt, key in commands and press <Enter> for the commands to execute. When you key in commands, you are interacting with a command interpreter that interprets and executes the commands you key in. The interface is the shell. There are actually many shells such as the Bourne shell, Korn shell and C Shell. Linux uses the Bash (Bourne again shell). Again, if you ever worked with DOS, the command prompt will also seem familiar to you. It is virtually impossible to work in Linux and not use the shell. The other alternative is a GUI, which as its name suggests, is a graphical environment. Unlike the Windows and Macintosh GUI, where the windowing, desktop and user interface are integrated, Linux uses three elements to create the GUI: the X Window System, a windows manager and a desktop environment. The X Window System is a network oriented graphics system that runs on Linux. The X Window System (X for short) is essentially a collection of functions to draw points, rectangles and other graphics on a screen. It also includes a network protocol that, if a user is on a network, allows a user execute an X program on one computer and display the results on another computer. The X Windows System displays graphic information on the screen and administers the mouse and keyboard. The X server is the interface between the X Windows System and the hardware (graphics card, mouse) and allows you to set up the graphical display to specify such elements as monitor resolution or available colors. But X server does not provide the menus, or the mechanisms for such functions as switching windows, minimizing or maximizing windows. These types of features are provided by another application, an X Client, called a window manager. Window managers take care of how program windows are displayed on the screen. A windows manager provides windows with items such as title bars and buttons. It allows the manipulation of the windows themselves so that you may move, minimize, maximize or switch windows using a mouse. It also controls how the windows are decorated. The decoration is the appearance of the window frames and the placement and design of the controls such as buttons in a dialog box. There are many windows managers available in Linux. However, the Red Hat distribution of Linux uses the window manager called Enlightenment. There is one more component to a GUI and that is the desktop environment. A desktop is a user interface to system services, usually using icons and menus which allow a user to run programs and use a file system without directly keying in commands. A desktop is set of desktop tools and applications. Although X can be run without a desktop, it is much easier to run with a desktop. The desktop environment offers a common user interface with such features such as icons, menus, and manipulation of those items by dragging and dropping. Menus and text follow predefined language. Desktop components can be easily configured using dialog boxes. Various productivity tools such as a calendar or calculator are included. A desktop includes common utility programs for tasks users commonly need such as a text editor or calculator. Usually, most desktop components, such as changing background colors on the screen, can be easily accomplished by means of dialog boxes. The default desktop environment used in Red Hat Linux is GNOME. GNOME does not have a windows manger of its own but can be used with any windows manager. Again, in Red Hat Linux, Enlightenment is the windows manager that is used with GNOME. GNOME provides all the features in a desktop environment. The user can easily change the look of their applications by using the GNOME control center. GNOME provides desktop themes which allow the user to change the way their desktop looks based on the user choice. For instance, the user could choose the Blue Theme so that all their windows and text are in some shade of blue. Many applications are included in Gnomea graphics manipulation package, a spreadsheet program, an address book and so on. Furthermore GNOME provides the extensive support of drag-and-drop which allows the user to perform such tasks as dropping a file on the desktop or on a printer icon so that the file will print. GNOME also remembers the state of the desktop between logins so when the user logs on, he will see the same desktop and applications he was using the last time he logged off. In addition, GNOME applications can work together using such features as a common clipboard where items can be saved and then pasted into any other GNOME applications. |