您好,欢迎访问三七文档
Linux操作系统班级:0314404学号:031440407姓名:余安慧摘要:Linux提供了像MicrosoftWindows那样的可视的命令输入界面--XWindow的图形用户界面(GUI)。它提供了很多桌面环境系统,其操作就像Windows一样,有窗口、图标和菜单,所有的管理都是通过鼠标控制。GNOME。每个Linux系统的用户可以拥有他自己的用户界面或Shell,用以满足他们自己专门的Shell需要。同Linux本身一样,Shell也有多种不同的版本。主要有下列版本的Shell:BourneShell:是贝尔实验室开发的。BASH:是GNU的BourneAgainShell,是GNU操作系统上默认的shell。KornShell:是对BourneSHell的发展,在大部分内容上与BourneShell兼容。CShell:是SUN公司Shell的BSD版本。ZShell:Thelastshellyou’lleverneed!Z是最后一个字母,也就是终极Shell。它集成了bash、ksh的重要特性,同时又增加了自己独有的特性。关键字:Linux、Shell、图形用户界面目录摘要……………………………………………………………(I)一、引言…………………………………………………………4二、Shell中的变量……………………………………………5三、Shell的使用………………………………………………6四、常用命令……………………………………………………7五、学习心得……………………………………………………7一、引言Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口。它是命令语言、命令解释程序及程序设计语言的统称。shell是用户和Linux内核之间的接口程序,如果把Linux内核想象成一个球体的中心,shell就是围绕内核的外层。当从shell或其他程序向Linux传递命令时,内核会做出相应的反应。shell是一个命令语言解释器,它拥有自己内建的shell命令集,shell也能被系统中其他应用程序所调用。用户在提示符下输入的命令都由shell先解释然后传给Linux核心。有一些命令,比如改变工作目录命令cd,是包含在shell内部的。还有一些命令,例如拷贝命令cp和移动命令mv,是存在于文件系统中某个目录下的单独的程序。对用户而言,不必关心一个命令是建立在shell内部还是一个单独的程序。shell首先检查命令是否是内部命令,若不是再检查是否是一个应用程序(这里的应用程序可以是Linux本身的实用程序,如ls和rm,也可以是购买的商业程序,如xv,或者是自由软件,如emacs)。然后shell在搜索路径里寻找这些应用程序(搜索路径就是一个能找到可执行程序的目录列表)。如果键入的命令不是一个内部命令并且在路径里没有找到这个可执行文件,将会显示一条错误信息。如果能够成功找到命令,该内部命令或应用程序将被分解为系统调用并传给Linux内核。shell的另一个重要特性是它自身就是一个解释型的程序设计语言,shell程序设计语言支持绝大多数在高级语言中能见到的程序元素,如函数、变量、数组和程序控制结构。shell编程语言简单易学,任何在提示符中能键入的命令都能放到一个可执行的shell程序中。当普通用户成功登录,系统将执行一个称为shell的程序。正是shell进程提供了命令行提示符。作为默认值(TurboLinux系统默认的shell是BASH),对普通用户用“$”作提示符,对超级用户(root)用“#”作提示符。一旦出现了shell提示符,就可以键入命令名称及命令所需要的参数。shell将执行这些命令。如果一条命令花费了很长的时间来运行,或者在屏幕上产生了大量的输出,可以从键盘上按ctrl+c发出中断信号来中断它(在正常结束之前,中止它的执行)。当用户准备结束登录对话进程时,可以键入logout命令、exit命令或文件结束符(EOF)(按ctrl+d实现),结束登录。我们来实习一下shell是如何工作的。$makeworkmake:***Noruletomaketarget‘work’.Stop.$注释:make是系统中一个命令的名字,后面跟着命令参数。在接收到这个命令后,shell便执行它。本例中,由于输入的命令参数不正确,系统返回信息后停止该命令的执行。在例子中,shell会寻找名为make的程序,并以work为参数执行它。make是一个经常被用来编译大程序的程序,它以参数作为目标来进行编译。在“makework”中,make编译的目标是work。因为make找不到以work为名字的目标,它便给出错误信息表示运行失败,用户又回到系统提示符下。另外,用户键入有关命令行后,如果shell找不到以其中的命令名为名字的程序,就会给出错误信息。例如,如果用户键入:$myprogbash:myprog:commandnotfound$可以看到,用户得到了一个没有找到该命令的错误信息。用户敲错命令后,系统一般会给出这样的错误信息。二、Shell中的变量⑴常用系统变量$#:保存程序命令行参数的数目$?:保存前一个命令的返回码$0:保存程序名$*:以($1$2...)的形式保存所有输入的命令行参数$@:以($1$2...)的形式保存所有输入的命令行参数⑵定义变量shell语言是非类型的解释型语言,不象用C++/JAVA语言编程时需要事先声明变量.给一个变量赋值,实际上就是定义了变量.在linux支持的所有shell中,都可以用赋值符号(=)为变量赋值.如:abc=9(bash/pdksh不能在等号两侧留下空格)setabc=9(tcsh/csh)由于shell程序的变量是无类型的,所以用户可以使用同一个变量时而存放字符时而存放整数.如:name=abc(bash/pdksh)setname=abc(tcsh)在变量赋值之后,只需在变量前面加一个$去引用.如:echo$name⑶位置变量当运行一个支持多个命令行参数的shell程序时,这些变量的值将分别存放在位置变量里.其中第一个参数存放在位置变量1,第二个参数存放在位置变量2,依次类推...,shell保留这些变量,不允许用户以令外的方式定义他们.同别的变量,用$符号引用他们.三、Shell的使用不论是哪一种Shell,它最主要的功用都是解译使用者在命令列提示符号下输入的指令。Shell语法分析命令列,把它分解成以空白区分开的符号(token),在此空白包括了跳位键(tab)、空白和换行(NewLine)。如果这些字包含了metacharacter,shell将会评估(evaluate)它们的正确用法。另外,shell还管理档案输入输出及幕后处理(backgroundprocessing)。在处理命令列之后,shell会寻找命令并开始执行它们。Shell的另一个重要功用是提供个人化的使用者环境,这通常在shell的初始化档案中完成(.profile、.login、.cshrc、.tcshrc等等)。这些档案包括了设定终端机键盘和定义窗口的特征;设定变量,定义搜寻路径、权限、提示符号和终端机类型;以及设定特殊应用程序所需要的变量,例如窗口、文字处理程序、及程序语言的链接库。Kornshell和Cshell加强了个别化的能力:增加历程、别名、和内建变量集以避免使用者误杀档案、不慎签出、并在当工作完成时通知使用者。Shell也能当解译性的程序语言(interpretedprograminglanguage)。Shell程序,通常叫做命令文件,它由列在档案内的命令所构成。此程序在编辑器中编辑(虽然也可以直接在命令列下写作程序,onlinescripting),由UNIX命令和基本的程序结构,例如变量的指定、测试条件、和循环所构成。您不需要编译shell命令档。Shell本身会解译命令档中的每一行,就如同由键盘输入一样。shell负责解译命令,而使用者则必须了解这些命令能做什么。下面列出了一些有用的命令和它们的使用方法。四、常用命令cd命令:改变工作目录。mkdir命令:创建一个目录(类似DOS下的md命令)。rmdir命令:删除空目录。rm命令:在linux中创建文件很容易,系统中随时会有文件变得过时且毫无用处。用户可以用rm命令将其删除。该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。pwd命令:在Linux层次目录结构中,用户可以在被授权的任意目录下利用mkdir命令创建新目录,也可以利用cd命令从一个目录转换到另一个目录。然而,没有提示符来告知用户目前处于哪一个目录中。要想知道当前所处的目录,可以使用pwd命令,该命令显示整个路径名。ls命令:ls是英文单词list的简写,其功能为列出目录的内容。这是用户使用频率最多的命令,因为用户需要不时地查看某个目录的内容。该命令类似于DOS下的dir命令。cp命令:该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,就如同DOS下的copy命令一样,功能非常强大。mv命令:用户可以使用mv命令来为文件或目录改名或将文件由一个目录移入另一个目录中。该命令如同DOS下的ren和move的组合。ln命令:该命令在文件之间创建链接。这种操作实际上是给系统中已有的某个文件指定另外一个可用于访问它的名称。对于这个新的文件名,我们可以为之指定不同的访问权限,以控制对信息的共享和安全性的问题。Find命令:在目录结构中搜索文件,并执行指定的操作。此命令提供了相当多的查找条件,功能很强大。cat命令:在标准输出上显示文件;连接两个或多个文件more命令:在终端屏幕按屏显示文本文件。Passwd命令:用来更改使用者的密码五、学习心得Linux是一种自由和开放操作系统。目前存在着许多不同的Linux,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机。Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。
本文标题:Linux论文
链接地址:https://www.777doc.com/doc-3810343 .html