图形化界面X窗口系统(简称X)的一部分。要注意的是,X窗口系统仅仅是Linux上面的一个软件(或者也可称为服务),它不是Linux自身的一部分。虽然现在的X窗口系统已经与Linux整合得相当好了,但毕竟还不能保证绝对的可靠性。另外,X窗口系统是一个相当耗费系统资源的软件,它会大大地降低Linux的系统性能。因此,若是希望更好地享受Linux所带来的高效及高稳定性,建议读者尽可能地使用Linux的命令行界面,也就是shell环境。
当用户在命令行下工作时,不是直接同操作系统内核交互信息的,而是由命令解释器接受命令,分析后再传给相关的程序。shell是一种Linux中的命令行解释程序,就如同DOS下的命令解释程序一样,为用户提供使用操作系统的接口。它们之间的关系如图2.1所示。用户在提示符下输入的命令都由shell先解释然后传给Linux内核。
shell是命令语言、命令解释程序及程序设计语言的统称。它不仅拥有自己内建的shell命令集,同时也能被系统中其他应用程序所调用。
shell的一个重要特性是它自身就是一个解释型的程序设计语言,shell程序设计语言支持绝大多数在高级语言中能见到的程序元素,如函数、变量、数组和程序控制结构。shell编程语言简单易学,任何在提示符中能键入的命令都能放到一个可执行的shell程序中。关于shell编程的详细讲解,感兴趣的读者可以参见其他相关书籍。
Linux中运行shell的环境是“系统工具”下的“终端”,读者可以单击“终端”以启动shell环境。这时屏幕上显示类似“[]$”的信息,其中,david是指系统用户,localhost是计算机名,而home是指当前所在的目录。
由于Linux中的命令非常多,要全部介绍几乎是不可能的。因此,在本书按照命令的用途进行分类讲解,并且对每一类中最常用的命令详细讲解,同时列出同一类中的其他命令。由于同一类的命令都有很大的相似性,因此,读者通过学习本书中所列命令,可以很快地掌握其他命令。
Linux是一个多用户的操作系统,每个用户又可以属于不同的用户组,下面,首先来熟悉一下Linux中的用户切换和用户管理的相关命令。
为该使用者重新登录,大部分环境变量(如HOME、SHELL和USER等)和工作目录都是以该使用者(USER)为主。若没有指定USER,缺省情况是root
n 在将普通用户变更为root用户时建议使用“-”选项,这样可以将root的环境变量和工作目录同时带入,否则在以后的使用中可能会由于环境变量的原因而出错。
环境变量实际上就是用户运行环境的参数集合。Linux是一个多用户的操作系统。而且在每个用户登录系统后,都会有一个专有的运行环境。通常每个用户默认的环境都是相同的,而这个默认环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。
读者可以试着用“env”命令查看“su-root”(或“su”)和“suroot”的区别。

