本章重点介绍Linux的常用操作和命令。在介绍命令之前,先对Linux的Shell进行了简单介绍,之后根据大多数用户的使用习惯,对各类操作和相关命令进行了分类介绍。对相关命令的介绍都力求浅显易懂,都给出操作实例,使读者才能照着实际操作,并得到正确结果。命令是Linux操作系统的神器,勿必把握好,其实不可能一下子熟练把握,而且只要多加练习,就可熟能生巧免费linux主机,运用自如。最后对Linux的环境变量也进行了必要的介绍。
3.1LinuxShell3.1.1Shell是哪些
后面早已提及过,Linux系统为用户提供了多种用户界面,包括Shell界面、系统调用和图形界面。其中Shell界面是UNIX/Linux系统的传统界面,也可以说是最重要的用户界面,无论是服务器、桌面系统还是嵌入式应用,都离不开Shell。
Shell,中文原意是壳体,LinuxShell就是Linux操作系统的机壳,为用户提供使用操作系统的插口,是Linux系统用户交互的重要插口。登陆Linux系统或则打开Linux的终端,都将会启动Linux所使用的Shell。
LinuxShell一个命令类库,是Linux下最重要的交互界面,从标准输入接收用户命令,将命令进行解析并传递给内核linux系统环境变量设置,内核则依照命令,做出相应的动作,假如有反馈信息,则输出到标准输出上,示意过程如图3.1所示。嵌入式Linux的标准输入和输出都是并口终端。
图3.1命令输入和结果输出
Shell既能解释自身的内建命令,也能解释外部命令,如系统某个目录下的可执行程序。Shell首先判定是否是自己的内建命令,之后再检测是不是系统的应用程序,倘若不是内建命令linux系统环境变量设置常用linux系统,在系统也找不到这个应用程序,则提示错误信息,假若找到了应用程序,则应用程序调入系统调用时深陷内核。
Shell也是一种解释型的程序设计语言,而且支持绝大多数中级语言的程序元素,如变量、数组、函数以及程序控制等。Shell编程简单易学,任何在Shell提示符中输入的命令都可以放在一个可执行的Shell程序文件中。Shell文件或许就是诸多Linux命令的集合,亦称为Shell脚本文件。
3.1.2Shell的种类和特征
LinuxShell有多种Shell,比较通用且有标准的主要分为两类:BourneShell(sh)和CShell(csh),各自包括几种具体的Shell,具体如表3.1所列。
BourneShell是UNIX最初使用的shell,在每种UNIX上都可以使用。BourneShell的优点是在Shell编程方面挺好,缺点是用户的交互不如其他几种Shell。
BourneAgainShell简称Bash,是BourneShell的扩充,与BourneShell完全向后兼容,在BourneShell的基础上降低了好多新特点。Bash提供了命令补全、命令编辑和命令历史表等功能,还包含了好多Cshell和Kornshell中的优点,使用灵活,界面友好,编程便捷,是GNU/Linux操作系统的默认Shell。
KornShell由AT&T的Bell实验室DavidKorn开发,吸收了所有CShell的交互式特点,并融入了Bourneshell的句型,与Bourneshell完全兼容。
CShell由BillJoy在BSD系统上开发,提高了用户交互功能,并将编程句型弄成了C语言风格,还降低了命令历史、别名、文件名替换、作业控制等功能。目前使用较少。
在不同发行版中,所采用的默认Shell也有所不同,如Redhat和Fedora中默认Shell为bash,Ubuntu中用了dash。无论用哪种Shell,登入系统后系统将运行一个Shell进程。依照不同用户,Shell提供不同的命令提示符,root用户的提示符为“#”,普通用户的命令提示符为“$”,在命令提示符下输入命令即可与系统进行交互。
虽然不同发行版的默认Shell有可能不同,而且所采用的Shell通常都具有如下特点: