版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
重点内容:嵌入式Linux简介Linux主流版本介绍GNOME与KDELinux基本操作Linux内核分析第2章Linux基础一、Linux简介
简单地说,Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intelx86系列CPU的计算机上。这个系统是由世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。Linux吉祥物LogoLinux的出现,最早开始于一位名叫Linus
Torvalds的计算机业余爱好者,当时他是芬兰赫尔辛基大学的学生。他的目的是想设计一个代替Minix(是由一位名叫AndrewTannebaum的计算机教授编写的一个操作系统示教程序)的操作系统,这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有Unix操作系统的全部功能,因而开始了Linux雏形的设计。一、Linux简介Linux特点Linux之父——Linus
Torvaldslinux发音linux发音五花八门版本颇多,见到和听到的不下10种。根据linux的创始人Linus
Torvalds的说法,Linux的发音和“Minix”是押韵的。“Li”中“i”的发音类似于“Minix”中“i”的发音,而“nux”中“u”的发音类似于英文单词“profess”中“o”的发音。依照国际音标应该是/’linэks/,类似于“里讷克斯”。一、Linux简介Linus
Torvalds针对读音分歧较多的情况,特意录了一段他对Linux的发音。录音的内容是这样的:“Hello,thisisLinus
Torvalds,andIpronounceLinuxasLinux.”Linux操作系统在短时间内得到迅猛的发展,这与该操作系统良好的特性是分不开的。Linux包含了UNIX操作系统的全部功能和特性。一、Linux简介Linux特点
简单地说,Linux具有UNIX的所有特性并且具有自己独特的魅力,主要表现在以下几个方面:1、开放性 2、多用户3、多任务 4、友好的用户界面5、设备独立性 6、丰富的网络功能7、文件传输 8、远程访问9、可靠的安全性 10、良好的可移植性11、XWindow系统 12、内存保护模式13、共享程序库一、Linux简介Linux特点Linux给个人计算机带来了能够与UNIX系统相比的速度、效率和灵活性,使个人计算机所具有的潜力得到了充分发挥。Linux与Windows工作方式存在一些根本的区别,这些区别只有在用户对两者都很熟悉之后才能体会到,但它们却是Linux思想的核心。一、Linux简介Linux与Windows1、Linux的应用目标是网络2、可选的GUI:用户可以只运行GUI,或者在需要时使用图形窗口运行GUI。3、文件名扩展:Linux不使用文件名扩展来识别文件的类型。4、重新引导:一旦开始运行,它将保持运行状态,直到受到外来因素的影响,比如硬件故障。5、命令区分大小写Linux与Windows一、Linux简介Linux一般包括四个主要部分:内核(Kernel)、命令解释层(Shell或其他操作环境)、文件结构(FileStructure)和实用工具。其中内核是整个操作系统的内核部分;Shell是用户与计算机交流的接口;文件结构是存放在存储设备上文件的组织方法;实用工具是Linux系统中运行的一些常用软件。Linux的主要组成部分
一、Linux简介1、内核内核是Linux系统的心脏,是运行程序和管理硬件设备的内核程序,决定着系统的性能和稳定性。内核以独占的方式执行最底层任务,保证系统正常运行,协调多个并发进程,管理进程使用的内存,使它们相互之间不产生冲突,满足进程访问磁盘的请求等。它从用户那里接受命令并把命令送给内核去执行。Linux核心源程序通常都安装在/usr/src/linux下。Linux的主要组成部分
一、Linux简介Linux内核包括几个重要部分:进程管理、内存管理、硬件设备驱动、文件系统驱动、网络管理。进程管理产生进程,以切换运行时的活动进程来实现多任务;内存管理负责分配进程的存储区域和对换空间区域、内核的部件及buffercache;在最底层,内核对它支持的每种硬件包含一个硬件设备驱动。
一、Linux简介Linux的主要组成部分
2、ShellShell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由Shell命令组成的程序。Shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。Linux提供了像MicrosoftWindows那样的可视的命令输入界面-X-Window的图形用户界面(GUI),它提供了很多窗口管理器,其操作就像Windows一样,有窗口、图标和菜单,所有的管理都通过鼠标控制。现在比较流行的窗口管理器是KDE和GNOME。一、Linux简介Linux的主要组成部分
同Linux本身一样,Shell也有多种不同的版本,目前主要有以下几种:BourneShell:是贝尔实验室开发的;BASH:是GNU的BourneAgainShell,是GNU操作系统上默认的Shell;KornShell:是对BourneSHell的发展,在大部分内容上与BourneShell兼容;CShell:是Sun公司Shell的BSD版本。3、文件结构文件结构是文件存放在磁盘等存储设备上的组织方法,主要体现在对文件和目录的组织上。目录提供了管理文件的一个方便而有效的途径,我们能够从一个目录切换到另一个目录,而且可以设置目录和文件的权限,以便允许或拒绝其他人对其进行访问。Linux目录采用多级树形结构(如图2-1所示),用户可以浏览整个系统,可以进入任何一个已授权进入的目录,访问那里的文件。文件结构的相互关联性使共享数据变得容易,几个用户可以访问同一个文件。Linux是一个多用户系统,操作系统本身的驻留程序存放在以根目录开始的专用目录中,有时被指定为系统目录。一、Linux简介Linux的主要组成部分
Linux文件系统包含三类文件:普通文件:存放的是数据和程序,也就是二进制流。文件中不包含任何特定的结构。目录文件:目录是一种结构,它允许不同的文件和目录放在一起,像windows系统中的文件夹。其中包含的下级目录叫子目录。特殊文件:包含多种类型,一般的说,它和不同进程间通讯、计算机和外部设备通讯有关系。一、Linux简介Linux的主要组成部分
4、实用工具内核、Shell和文件结构一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件以及使用系统。此外,Linux操作系统还有许多被称为实用工具的程序,辅助用户完成一些特定的任务。一、Linux简介Linux的主要组成部分
标准的Linux系统都有一套叫做实用工具的程序,它们是专门的程序,例如编辑器、执行标准的计算操作等,用户也可以产生自己的工具。Linux中的实用工具可分为以下三类:编辑器:用于编辑文件;过滤器:用于接收数据并过滤数据;交互程序:允许用户发送信息或接收来自其他用户的信息。Linux的主要组成部分
一、Linux简介Linux在发展过程中出现了不同的版本,它们有各自的特性和优点。但是Linux操作系统始终坚持免费发放的原则,正是在开放性原则的带动下,Linux得到了迅速的发展和普及。1FedoraLinux2红旗Linux3Ubuntu
4SUSELinux5其他版本Linux的种类
一、Linux简介FedoraLinux2003年,RedHat公司宣布不再推出个人使用的发行版本并转向商业版本的开发,同时RedHat公司也将原来的RedHatLinux开发计划和Fedora计划重新整合成一个新的Fedora项目,它是在RedHatLinux9的基础上加以改进而成的。Fedora项目预计每年将会发行2~3次版本。一、Linux简介FedoraLinux的种类
红旗LinuxRedFlagLinuxDesktop是linux的一发展产品,是由中科红旗软件技术有限公司、北大方正等开发研发的,中科红旗研发的产品有RedFlagAsianuxServer(服务器系统)、RedflagLinuxDesktop(个人桌面)、MIDINUX(移动设备)和嵌入式,RedFlagLinuxDesktop是其中之一。一、Linux简介红旗LinuxLinux的种类
UbuntuUbuntu
是一个由论坛社区开发的适用于笔记本计算机、桌面计算机和网络服务器的系统。其功能更加完美,提供了新的认证系统,并完善了对Windows操作系统下打印机共享的支持。桌面版将更好地整合新的CompizFusion,服务器版本及其功能也会更加精简高效。一、Linux简介UbuntuLinux的种类
SUSELinuxSUSE是最早的Linux商业发行版,但SUSELinux的使用仍然是免费的。其第一个发行版在1994年推出。目前SUSE系列主要有个人版和企业版,它们各自有自己的优点,一、Linux简介SUSELinuxLinux的种类
其他版本由于Linux操作系统完全开放,并可自由修改和发布,因此,在Linux的发展过程中出现了许多类型的版本,它们有各自的特点,用户可根据不同的需要进行自由选择。除了前面列举的版本外,目前比较流行的版本有:GentooDebianSlackwareRaysTourboLinuxLinux各发行版均可在网络上自由下载,并且可以在相应网站及BBS上寻求各种帮助。一、Linux简介Linux的种类
目前,几乎所有的Linux发行版本中都包含了GNOME和KDE两种图形操作环境,许多Linux操作系统默认的图形操作界面为GNOME,它除了具有出色的图形环境功能外,还提供了编程接口,允许开发人员按照自己的爱好和需要来设置窗口管理器。KDE桌面环境是一个网络透明的桌面环境,它的功能强大,除了窗口管理器和文件管理器外,基本覆盖了大部分Linux任务的应用程序组,同时还结合了Unix操作系统的灵活性。
二、Linux图形操作界面几乎所有的Unix/Linux操作系统都能支持与使用XWindows,GNOME和KDE图形环境也都是以XWindow系统为基础构建的。XWindow从逻辑上分为三层:最底层的XServer(X服务器)主要处理输入/输出信息并维护相关资源,它接受来自键盘、鼠标的操作并将它交给XClient(X客户端)作出反馈,而由XClient传来的输出信息也由它来负责输出;最外层的XClient则提供一个完整的GUI界面,负责与用户的直接交互(KDE、Gnome都是一个XClient),而衔接XServer与XClient的就是“XProtocol(X通讯协议)”、它的任务是充当这两者的沟通管道。尽管UNIX厂商采用相同的XWindow,但由于终端的XClient并不相同,这就导致不同UNIX产品搭配的GUI界面看起来非常不一样。二、Linux图形操作界面XWindow系统架构示意图二、Linux图形操作界面KDE1996年10月,图形排版工具Lyx的开发者、一位名为MatthiasEttrich的德国人发起了KDE(KoolDesktopEnvironment)项目,与之前各种基于XWindow的图形程序不同的是,KDE并非针对系统管理员,它的用户群被锁定为普通的终端用户,MatthiasEttrich希望KDE能够包含用户日常应用所需要的所有应用程序组件,例如Web浏览器、电子邮件客户端、办公套件、图形图像处理软件等等,将UNIX/Linux彻底带到桌面。当然,KDE符合GPL规范,以免费和开放源代码的方式运行。二、Linux图形操作界面GNOMEGNOME项目于1997年8月发起,创始人是当时年仅26岁的墨西哥程序员MiguelDeIcaza。关于GNOME的名称有一个非常有趣的典故:Miguel到微软公司应聘时对它的ActiveX/COMmodel颇有兴趣,GNOME(NetworkObjectModel)的名称便从此而来。GNOME选择完全遵循GPL的GTK图形界面库为基础,因此我们也一般将GNOME和KDE两大阵营称为GNOME/GTK和KDE/Qt。与Qt基于C++语言不同,GTK采用较传统的C语言,虽然C语言不支持面向对象设计,看起来比较落后,但当时熟悉C语言的开发者远远多于熟悉C++的开发者。加之GNOME/GTK完全遵循GPL版权公约,吸引了更多的自由程序员参与,但由于KDE先行一步,且基础占优势,一直都保持领先地位。二、Linux图形操作界面命令的使用方式在Linux系统中打开终端的方式有以下两种:种是在桌面上依次单击“主程序→系统工具→终端”可打开如图2-1的终端窗口;另一种是在Linux桌面上单击鼠标右键,从弹出的快捷菜单中选择“终端”命令,也可打开终端窗口。
一般的Linux使用者均为普通用户,而系统管理员一般使用超级用户帐号完成一些系统管理的工作要说明的是,不同的用户登录其终端的提示符略有不同,在图2-1中显示的是超级用户的提示符。如果是一般用户登录,其提示符如图2-2所示。Linux系统是以全双工的方式工作,即从键盘把字符输入系统,系统再将字符回送到终端并显示出来。通常,回送到终端的字符与输入字符相同,因此操作员看到的正是自己输入的字符。但也有个别的时候,系统不回送符号。
键盘上大多数字符是普通打印字符,它们没有特殊含义。只有少数特殊字符指示计算机做专门的操作。其中最常见的特殊字符是回车键RETURN,它表示输入行结束;系统收到回车信息便认为输入的当前行结束,系统的响应是让屏幕光标回到下一行行首。 回车符只是控制符的一个例子。控制符是指控制终端工作方式的非显示字符。输入一般控制符必须先按下控制键,或称作CTRL键,然后再按所对应的字符键。例如,输入回车符可以直接按回车键,也可以先按控制键,再按m键。CONTROL-m或CTL-m也是回车符。一些常用的控制符有:CTL-d,它表示终端的输入结束;CTL-g控制终端响铃;CTL-h称为退格键,用于改正输入的错误.
此外还有两个特殊键,一个是DELETE键,另一个是BREAK键。大多数LINUX系统中,DELETE键表示立即终止程序。在有些系统里,也用CTL-c终止程序。一般说来,BREAK键与DELETE键、CTL-c的功能基本相同。终端显示提示符后,用户就可以输入命令请示系统执行。这里所谓命令就是请示调用某个程序。例如当用户输入date命令时,系统就去调用date程序显示当前的日期和时间,终端屏幕上会出现类似下面的信息:
[root@lbliubingroot]#date
日
2月
115:49:11CST2004当命令输入完毕后,一定不要忘记按回车健,因为系统只有收到回车键才认为命令行结束。
又如询问当前有哪些用户挂在系统里。命令及响应如下所示:
[root@lbliubingroot]#who root:0Feb115:41 rootpts/0Feb115:46(:0.0)
jlpts/1Feb115:40(:0.0)还有另外的方法可以查看目前登录用户的注册信息。命令及响应如下所示:
[root@lbliubingroot]#whoami rootpts/0Feb115:46(:0.0)这时系统仅回送用户自己的注册信息。假如用户打错了命令,系统将回答这一命令没有找到。
[root@lbliubingroot]#whomwhom:unabletoopen/root/Mail/draft:没有那个文件或目录上面几条命令在终端中的输入方法及响应如图2-3所示。另外,在终端上还有一个命令补齐(Command-LineCompletion)的操作技巧,所谓命令补齐是指当键入的字符足以确定目录中一个唯一的文件时,只须按
Tab键就可以自动补齐该文件名的剩下部分,例如要把目录
/freesoft
下的文件
gcc-2.8.1.tar.gz解包,当键入到
tarxvfz/freesoft/g
时,如果此文件是该目录下唯一以
g开头的文件,这时就可以按下
Tab键,这时命令会被自动补齐为:tarxvfz/freesoft/gcc-2.8.1.tar.gz,非常方便
2.1.2特殊字符在Linux系统的终端中有几个最有用的bash变量,这些变量变量名及简单描述如下:Ø
HISTFILE:
用于贮存历史命令的文件。
Ø
HISTSIZE:
历史命令列表的大小。
Ø
HOME:
当前用户的用户目录。
Ø
OLDPWD:
前一个工作目录。
Ø
PATH:
bash寻找可执行文件的搜索路径。
Ø
PS1:
命令行的一级提示符。
Ø
PS2:
命令行的二级提示符。
Ø
PWD:
当前工作目录。
SECONDS:当前shell开始后所流逝的秒数。
这意味着
bash保留了一定数目的先前已经在shell里输入过的命令。这个数目取决于一个叫做HISTSIZE的变量。
使用历史记录列表最简单的方法是用上方向键。
另一个使用命令历史文件的方法是用
bash的内部命令
history和
fc(fix
命令)命令来显示和编辑历史命令。history命令能以两种不同的方法来调用。第一种是:
history[n]当
history命令没有参数时,整个历史命令列表的内容将被显示出来。使用
n参数的作用是仅有最后
n个历史命令会被列出。
例如,history5显示最后
5个命令。
调用
history命令的第二种方法用于修改命令历史列表文件的内容。命令的语法如下:
history[-r|w|a|n][filename]2.1.3通配符基础
通配符
又称多义符。在描述文件时,有时在文件名部分用到一些通配符,以加强命令的功能。在Linux系统中有以下基本的通配符:
Ø
?:表示该位置可以是一个任意的单个字符。
Ø
*:表示该位置可以是若干个任意字符。
Ø
方括号[charset]:可替代charset集中的任何单个字符下面对方括号通配符进行一些说明。例如[cChH]:表示在文件的该位置中可出现任意单个的c或h字符的大小写形式。
另外,通配符集还能描述介于字符对之间的所有字符。如“[a-z]”就可以代
替任意小写字母,而[a-zA-Z]则可替代任意字母。注意可替代的字符包括a到z和A到Z字符对之间的所有字符。
那么,是否能在一条指令中用多个通配符呢?答案是肯定的。如rma*out*tmp?该命令可以删除一系列临时性的输出文件,如ab.out.temp1、ab.out.temp1等。UNIX或Linux系统可将一定相关的文件看作一个集合的一部分,用户可以用该集合去匹配。
所以,如果需要显示nic-1.png,nic-2.png,nic-3.png,nic-4.png,nic-5.png,只须要在终端的命令提示符后输入:
lsnic-[1-5].png
这样利用通配符可以使指令的输入变得更加灵活。该技巧的可很容易实现显示一些文件名相关的文件。以上的各例在RedHatLinux9.0系统的终端中所显示的结果如图2-5所示。2.2文件概念及操作命令
2.2.1文件显示命令显示指定工作目录中所包含的内容的指令是ls,要说明的是ls命令列出文件的名字,而不是文件的内容。该命令的使用方式如下:
ls[选项][文件目录列表]ls命令中的常用选项如下:Ø
-a:显示所有文件及目录
(ls规定将文件名或目录名中开头为 "."的视为隐藏档,不会列出)Ø
-c:按列输出,纵向排序Ø
-x:按列输出,横向排序Ø
-l:除文件名外,也将文件状态、权限、拥有者、文件大小 等信息详细列出
Ø
-t:根据文件建立时间的先后次序列出
Ø
-A:同
-a,但不列出
"."(目前目录)及
".."(父目录)Ø
-X:按扩展名排序显示Ø
-R:递归显示下层子目录Ø
--help:显示帮助信息Ø
--version:显示版本信息
Linux支持多种文件类型,每一类用一个字符来表示,其说明如下:Ø
-:常规文件Ø
d:目录Ø
b:块特殊设备Ø
c:字符特殊设备Ø
p:有名管道Ø
s:信号灯Ø
m:共享存储器文件类型的字符表示文件的权限,权限由三个字符串组成,这三个字符串分别表示:该文件所有者的权限、组中其他人的权限和系统中其人的权限;每个字符串又由三个字符组成,依次表示对文件的读(用字符r表示)、写(用字符W表示)和执行权限(用字符x表示)。当用户没有相应的权限时,该权限的对应位置用短线“-”来表示。
例如:drwxr-x---表示的含义是:d表示这条信息是目录;目录拥有者的权限是rwx(表示有读、写和执行权限);组中其他人对该目录的权限是r-x(表示有读和执行权限,没有写权限),系统中其他人对该目录的权限是---(表示读、写和执行权限都没有)。下面是使用命令来显示帮助和版本信息,命令如下:#ls--version#lls--help|more2.2.2查找、排序及显示指定文件内容的命令
1.查找文件在Linux系统中查找文件的命令通常为find命令。find命令可在使用、管理Linux系统中方便地查找所需要的指定文件。
find命令的语法格式如下:
#find[目录列表][匹配标准]在命令格式中有两个参数,说明如下:Ø
目录列表:希望查询文件或文件集的目录列表,目录间用空格分隔。Ø
匹配标准:希望查询的文件的匹配标准或说明。详细的匹配标准如表2-2所示。-name文件
告诉find要找什么文件;要找的文件包括在引号中,可以使用通配符(*和?)
-perm模式
匹配所有模式为指定数字型模式值的文件。不仅仅是读,写和执行,所有模式都必须匹配。如果在模式前是负号(-),表示采用除这个模式外的所有模式。
-typex匹配所有类型为x的文件。x是c(字符特殊),b(块特殊),d(目录),p(有名管道),l(符号连接),s(套接文件)或f(一般文件)。
-linksn匹配所有连接数为n的文件。
-user用户号
匹配所有用户序列号是前面所指定的用户序列号的文件,可以是数字型的值或用户登录名。
-newer文件
匹配所有修改时间比file文件更新的文件。
-sizen匹配所有大小为n块的文件(512字节块,若k在n后,则为1K字节块)。
-print显示整个文件路径和名称。一般来说,都要用-print,如果没有这个参数,则find命令进行所要求的搜索是没有显示结果的。
1)通过文件名查找
知道了某个文件的文件名,却不知道它存于哪个目录下,此时可通过查找命令找到该文件,命令如下:
#find/-namehttpd.conf
–print2)根据部分文件名查找 当要查找某个文件时,不知道该文件的全名,只知道这个文件包含几个特定的字母,此时用查找命令也是可找到相应文件的。这时在给字查找文件名时通配符“*”、“?”。例如,还是查找文件“httpd.conf”,但仅记得该文件名包含“http”字符串,可使用如下命令查找:
#find/–name*http*-print3)根据文件的特征查询
如果仅知道某个文件的大小、修改日期等特征也可使用find命令把该文件查找出来。例如,知道一个文件尺寸小于为2500bytes,可使用如下命令查找:
#find/etc–size-2500c–print下面是以时间特征为查找条件的find命令函数的参数:Ø
aminn查找n分钟以前被访问过的所有文件.Ø
atimen查找n天以前被访问过的所有文件.Ø
cminn查找n分钟以前文件状态被修改过的所有文件.Ø
ctimen查找n天以前文件状态被修改过的所有文件.Ø
mminn查找n分钟以前文件内容被修改过的所有文件.Ø
mtimen查找n天以前文件内容被修改过的所有文件.
2.显示文本文件内容显示文本文件内容的命令是cat命令,用来将文件的内容显示到终端上,其命令语法如下:cat[选项]文件列表命令中的参数说明如下:
Ø
常用选项如表2-3所示Ø
文件列表:这是要连接文件的选项列表。如果没有指定文件或连字号(-),就从标准输入读取。
表2-3cat命令常用选项选
项
说
明
-b计算所有非空输出行,开始为1。
-e在每行末尾显示$符号。
-n计算所有输出行,开始为1。
-s将相连的多个空行用单一空行代替。
3.查找文件内容
查找文件内容的命令是grep命令。其使用的语法如下:
grep[选项]匹配字符串
文件列表命令中的参数说明如下:
选项如表2-4所示Ø
文件列表:
匹配字符串:希望在文件中查到的串。
表2-4grep命令的常用选项选项
说明
-v
列出不匹配串或正则表达式的行。
-c
对匹配的行计数。
-l
只显示包含匹配的文件的文件名。
-h
抑制包含匹配文件的文件名的显示-n 每个匹配行只按照相对的行号显示。
-i 产生不区分大小写的匹配,缺省状态是区分大小写。
2.2.4复制、删除和移动文件的命令1.文件复制命令
Linux下的cp命令用于复制文件或目录,该命令是最重要的文件操作命令,其命令格式如下:
cp
[选项]
源文件目标文件
cp
[选项]
源文件组
目标目录
参数说明如下:Ø
源文件:要拷贝的文件。Ø
目标文件:目标名。也可以是目录名,这种情况下,源文件名作为目标文件名,而文件放在该目录下。Ø
源文件组:要拷贝文件的由空格分隔的列表。Ø
目标目录:目标目录。常用命令的选项列表如表2-5所示。表2-5cp命令常用选项常用选项
说明-a 在备份中保持尽可能多的源文件结构和属。-b 作将要覆盖或删除文件的备份。-f 删除已存在的目标文件。-i 提示是否覆盖已存在的目标文件。-p 保持原先文件的所有者,组权限和时间标志-r 递归拷贝目录,把所有非目录文件当普通文件拷贝。-R 递归拷贝目录。2.文件的删除命令rm命令可从文件系统中删除文件及整个目录。rm命令所使用的命令格式如下:
rm[选项]文件列表参数说明如下:Ø
常用命令的选项列表如表2-6所示。Ø
文件列表:希望删除的用空格分隔的文件列表,可以包括目 录名。
表2-6rm命令常用选项常用选项
说明-r 删除文件列表中指定的目录,若不用此标志则不删除目录-I 指定交互模式。在执行删除前提示确认。任何以Y开始的 响应都表示肯定;其他则表示否定。-f 指定强行删除模式。通常,在删除文件权限可满足时rm提 示。本标志强迫删除,不用提示。-V 在删除前回显文件名。-- 指明所有选项结束。用于删除一个文件名与某一选项相同 的文件。例如:假定偶然建立了名为-f的文件,又打算删除它,命令rm-f不起任何作用,因为-f被解释成标志而不是文件名;而命令rm---f能成功地删除文件。3.移动文件在Linux系统中,移动文件可使用mv命令。Mv命令还可改文件改名,即把源文件以一个新文件名移动到另一个新的目录中去。该命令所使用语法形式有:
mv[-f][-i]文件1文件2
mv[-f][-i]目录1目录2
mv[-f][-i]文件列表
目录命令中的参数说明如下:Ø-f:通常情况下,目标文件存在但用户没有写权限时,mv会给出提示。本选项会使mv命令执行移动而不给出提示。Ø-i:交互模式,当移动的目录已存在同名的目标文件名时,用覆盖方式写文件,但在写入之前给出提示。Ø
文件:源文件名。Ø
文件2:目标文件名(新文件名)。Ø
目录1:源目录名。
目录2:目标目录名(新目录名)。
Ø文件列表:用空格分隔的文件名列表。本选项用于文件保持它们的名字被移动到一个新目录。
Ø目录:目标目录。2.3目录及其操作命令树型目录结构
Linux系统以文件目录的方式来组织和管理系统中的所有文件。所谓文件目录就是将所有文件的说明信息采用树型结构组织起来,即常说的目录。也就是说,整个文件系统有一个“根”(root),然后在根上分“杈”(directory),任何一个分杈上都可以再分杈,杈上也可以长出“叶子”。“根”和“杈”在Linux中被称为是“目录”或“文件夹”。而“叶子”则是一个个的文件。实践证明,此种结构的文件系统效率比较高。
如前所述,目录也是一种类型的文件。Linux系统通过目录将系统中所有的文件分级、分层组织在一起,形成了Linux文件系统的树型层次结构。以根目录为起点,所有其他的目录都由根目录派生而来用户可以浏览整个系统,可以进入任何一个已授权进入的目录,访问那里的文件。
Linux目录提供了管理文件的一个方便途径。每个目录里面都包含文件。用户可以为特定的文件创建特定的目录,也可以把一个目录下的文件移动或复制到另一目录下,而且能移动整个目录,并且和系统中的其他用户共享目录和文件。 需要说明的是,根目录(系统目录)是Linux系统中的特殊目录。Linux是一个多用户系统,操作系统本身的驻留程序存放在以根目录开始的专用目录中。2.工作目录、用户主目录与路径(1)
工作目录与用户主目录
从逻辑上讲,用户在登录到Linux系统中之后,每时每刻都“处在”某个目录之中,此目录被称作工作目录或当前目录(WorkingDirectory)。工作目录是可以随时改变的。用户初始登录到系统中时,其主目录(HomeDirectory)就成为其工作目录。工作目录用“.”表示,其父目录用“..”表示。
用户主目录是系统管理员增加用户时建立起来的(以后也可以改变),每个用户都有自己的主目录,不同用户的主目录一般互不相同。
用户刚登录到系统中时,其工作目录便是该用户主目录,通常与用户的登录名相同。(2)路径
路径是指从树型目录中的某个目录层次到某个文件的一条道路。此路径的主要构成是目录名称,中间用“/”分开。某个文件在文件系统中的位置都是由相应的路径决定的。 路径又分相对路径和绝对路径。
绝对路径是指从“根”开始的路径,也称为完全路径;相对路径是从用户工作目录开始的路径。 应该注意到,在树型目录结构中到某一确定文件的绝对路径和相对路径均只有一条。绝对路径是确定不变的,而相对路径则随着用户工作目录的变化而不断变化。这一点对于以后使用某些命令如cp和tar等大有好处。Linux系统主要目录说明/bin
:显而易见,bin就是二进制(binary)英文缩写。
/boot
:在这个目录下存放的都是系统启动时要用到的程序。在使用lilo引导linux的时候,会用到这里的一些信息。/dev:dev是设备(device)的英文缩写。这个目录对所有的用户都十分重要。因为在这个目录中包含了所有linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序。/etc
:etc这个目录是linux系统中最重要的目录之一。在这个目录下存放了系统管理时要用到的各种配置文件和子目录。我们要用到的网络配置文件,文件系统,x系统配置文件,设备配置信息,设置用户信息等都在这个目录下。
/sbin
:这个目录是用来存放系统管理员的系统管理程序。/home
:如果建立一个用户,用户名是“jl”,那么在/home目录下就有一个对应的/home/jl路径,用来存放用户的主目录。
/lib
:lib是库(library)英文缩写。这个目录是用来存放系统动态连接共享库的。几乎所有的应用程序都会用到这个目录下的共享库。
/mnt
:这个目录在一般情况下也是空的。可以临时将别的文件系统挂在这个目录下。/proc:可以在这个目录下获取系统信息。这些信息是在内存中,由系统自己产生的。
/root:如果用户是以超级用户的身份登录的,这个就是超级用户的主目录。/tmp
:用来存放不同程序执行时产生的临时文件。
/usr
:这是linux系统中占用硬盘空间最大的目录。2.3.2创建和删除目录的命令创建目录在Linux系统中建立新目录的命令是mkdir。该命令的语法格式如下:
mkdir[-m模式][-p目录名]目录命令中的参数说明如下:m模式:在建立目录时把按模式指定设置目录权限。该目录的权限分为:目录所有者的权限、组中其他人对目录的权限和系统中其他人对目录的权限。这三个权限分别用三个数字之和来表示:对目录的读权限是4、写权限是2、执行权限是1。-p目录名:建立所有不存在父目录的目录。
目录:要建立的目录。2.删除目录rmdir
命令是用来删除目录的,一般情况下要删除的目录必须为空目录,如果所给的目录不为空,系统会报告错误。。该命令的语法格式如下:rmdir-p目录列表命令中的参数说明如下:Ø
-p:在删除目录表指定的目录后,若父目录为 空,则rmdir也删除父目录。状态信息显示什么 被删除,什么没被删除。Ø
目录列表:空格分隔的目录名列表。要删除的 目录必须为空。2.3.3改变工作目录和显示目录内容的命令1.显示当前目录 显示当前目录的命令是pwd命令,该命令使用的语 法格式如下:pwd改变当前工作目录改变当前工作目录在Linux系统中使用的是cd命令。该命令使用的语法格式如下:
cd
[目录名]命令中的参数说明如下:Ø
目录名:改变到所指定的目录名。如果没有指定目录,就返回到用户主目录(在HOME环境变量中指定)。2.3.4链接文件的命令链接文件命令是ln命令。该命令在文件之间创建链接。这种操作实际上是给系统中已有的某个文件指定另外一个可用于访问它的名称。
该命令的使用语法如下:
ln[选项]目标
[链接名]
ln[选项]目标
目录链接有两种,一种被称为硬链接(HardLink),另一种被称为符号链接(SymbolicLink)。建立硬链接时,链接文件和被链接文件必须位于同一个文件系统中,并且不能建立指向目录的硬链接。而对符号链接,则不存在这个问题。默认情况下,ln产生硬链接
在硬链接的情况下,参数中的“目标”被链接至[链接名]。如果[链接名]是一个目录名,系统将在该目录之下建立一个或多个与“目标”同名的链接文件,链接文件和被链接文件的内容完全相同。如果[链接名]为一个文件,用户将被告知该文件已存在且不进行链接。如果指定了多个“目标”参数,那么最后一个参数必须为目录。 如果给ln命令加上-s选项,则建立符号链接。如果[链接名]已经存在但不是目录,将不做链接。[链接名]可以是任何一个文件名(可包含路径),也可以是一个目录,并且允许它与“目标”不在同一个文件系统中。如果[链接名]是一个已经存在的目录,系统将在该目录下建立一个或多个与“目标”同名的文件,此新建的文件实际上是指向原“目标”的符号链接文件。 例:$ln-slunch/home/xu用户为当前目录下的文件lunch创建了一个符号 链接/home/xu。2.3.5改变文件或目录存取权限的命令1.改变文件或目录权限在Linux系统中,用户设定文件权限控制其他用户不能访问、修改。但在系统应用中,有时需要让其他用户使用某个原来其不能访问的文件或目录,这是就需要重新设置文件的权限,使用的命令是chmod命令。并不是谁都可改变文件和目录的访问权限,只有文件和目录的所有者才有权限修改其权限,另外超级用户可对所有文件或目录进行权限设置。chmod命令的使用语法格式如下:chmod
[选项]文件和目录列表 命令中的参数说明如下:Ø
选项的常用取值如表2-7所示Ø
文件和目录列表:准备修改权限的文件和目录。常用选项
说明
-c只有在文件的权限确实改变时才进行详细说明。
-f不打印权限不能改变的文件的错误信息。
-v详细说明权限的变化。
-R递归改变目录及其内容的权限。
表2-7chmod命令的常用选项chmod命令支持两种文件权限设定的方法:
(1)使用字符串设置权限(2)使用八进制数设置权限 另外,文件和目录的权限还可用八进制数字模式来 表示。三个八进制数字分别代表ugo的权限。执行 权、读权和写权所对应的数值分别是1,2和4。 若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。2.改变文件和目录的所有权命令的格式如下:chown
[选项]用户文件和目录列表2.3.6挂接和卸载文件系统的命令1.挂接文件系统在Linux系统中,所有的设备都作为文件存放在/dev目录里。要使用某个设备上的文件数据时,要将该设备用mount命令挂接到系统上来,才能使用该设备上的文件。mount命令的使用语法格式如下:mount
[选项]
/dev/*** /mnt/000例如,要挂载一个U盘到系统上:mount
/dev/sdb1 /mnt/usb2.卸载文件系统umount
[选项]
/mnt/000功能:在指定目录中搜索文件,它的使用权限是所有用户。语法:find[路径][选项][描述]其中的路径为文件搜索路径,系统开始沿着此目录树向下查找文件。它是一个路径列表,相互用空格分离。若缺省路径,那么默认为当前目录。其中的描述是匹配表达式,是find命令接受的表达式。说明:若使用目录路径为“/”,通常需要查找较多的时间,可以指定更为确切的路径以减少查找时间。find命令可以使用混合查找的方法,例如,想在/etc目录中查找大于500000字节,并且在24小时内修改的某个文件,则可以使用-and(与)把两个查找参数链接起来组合成一个混合的查找方式,如“find/etc-size+500000c-and-mtime+1”。实例:使用查找命令,可在终端输入命令:
find./-nameqiong*.c本例中就使用了-name的选项支持通配符。文件搜索命令——find2.4文件压缩与联机帮助命令2.4.1文件压缩1.gzip压缩文件gzip命令是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip命令的使用语法格式如下:gzip[选项]压缩(解压缩)的文件名gzip命令各选项的说明如表2-9所示。表2-9gzip命令的常用选项常用选项说明-c将输出写到标准输出上,并保留原有文件。
-d将压缩文件解压。
-l对每个压缩文件,显示压缩文件的大小、未压缩文件的大小、压缩比、未压缩文件的名字等详细信息
-r递归式地查找指定目录并压缩其中的所有文件或者是解压缩。
-t测试,检查压缩文件是否完整。
-v对每一个压缩和解压的文件,显示文件名和压缩比。
2.文件打包tar
tar可以对文件和目录进行打包。利用tar,用户可以对某一特定文件进行打包(一般用作备份文件),也可以在包中改变文件,或者向包中加入新的文件。tar命令的使用语法格式如下:
tar[主选项+辅选项]文件或者目录
常用选项说明-c创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。
-x
从档案文件中释放文件。
-r把要存档的文件追加到档案文件的未尾。例如用户已经作好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。
-t列出档案文件的内容,查看已经备份了哪些文件。
-u更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。
表2-11tar命令的辅助选项的常用选项常用选项
说明f
使用档案文件或设备,这个选项通常是必选的。K 保存已经存在的文件。例如我们把某个文件还原,在还原的过程中,遇到相同的文件,不会进行覆盖。m 在还原文件时,把所有文件的修改时间设定为现在。M 创建多卷的档案文件,以便在几个磁盘中存放。v
详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。z
用gzip来压缩/解压缩文件j
用来压缩、解压bzip2文件unzip命令 可以用unzip命令,该命令用于解扩展名为“.zip”的压缩文件。该命令使用的语法格式如下:
unzip[选项]压缩文件名.zipupzip命令各选项的说明如表2-12所示。表2-12upzip命令的常用选项常用选项
说明-x 文件列表
解压缩文件,但不包括指定的file文件-v 查看压缩文件目录,但不解压。-t 测试文件有无损坏,但不解压。-d 目录把压缩文件解到指定目录下。-z 只显示压缩文件的注解。-n 不覆盖已经存在的文件。-o 覆盖已存在的文件且不要求用户确认。-j 不重建文档的目录结构,把所有文件解压到同 一目录下。2.4.2联机帮助
1.显示帮助手册通常使用者只要在命令man后,输入想要获取的命令的名称(例如ls),man就会列出一份完整的说明,其内容包括命令语法、各选项的意义以及相关命令等。该命令的一般形式为:
man
[选项]命令名称 表2-13man命令的常用选项常用选项
说明-S 根据章节显示,由于一个命令名称可能会有很多 类别,其类别说明如表2-14所示。-f 只显示出命令的功能而不显示其中详细的说明文件-w 不显示手册页,只显示将被格式化和显示的文件所在 位置。-a 显示所有的手册页,而不是只显示第一个。-E 在每行的末尾显示$符号
2.系统帮助文档help命令用于查看所有Shell命令。用户可以通过该命令寻求Shell命令的用法,只需在所查找的命令后输入help命令,就可以看到所查命令的内容了。
例如:查看cd命令的使用方法。
$cd--help3.whereis命令这个程序的主要功能是寻找一个命令所在的位置。例如,最常用的ls命令,它是在/bin这个目录下的。如果
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国物流行业协会发展现状及职能转型与行业服务创新
- 2026中国稀土永磁材料在全球供应链中的地位与竞争策略分析
- 2026人工智能机器人应用前景调研及智能工厂数据分析报告
- 2026中国氢燃料电池汽车商业化进程与基础设施配套方案报告
- 生氧施工安全技术措施培训
- 2026全息顯示行業市場前景技術創新評估商業化規劃發展策略研究報告
- 2026中国印刷复制行业市场供需分析及投资评估规划分析研究报告
- 升降机安全技术知识培训
- 防止汽轮机大轴弯曲安全技术措施培训
- 2026中国医疗健康产业发展现状养老服务模式创新分析投资规
- 2026河北沧州市审计局公开招聘审计辅助人员14名笔试备考试题及答案详解
- 2026广西崇左供电局项目资料员招聘25人笔试备考试题及答案详解
- 莆田市公安局2026年下半年公开招聘警务辅助人员笔试备考题库及答案详解
- 2026学年冀教版小升初数学模拟试卷
- 2026年楚雄州州级机关统一遴选公务员笔试真题及答案解析
- 叠合板施工工法
- 《电工与电子技术》课件第2章
- 道路运输经营许可证申请表
- JJG 954-2000数字脑电图仪及脑电地形图仪
- 政府机构沟通技巧培训:提升政府公共服务水平
- 淫羊藿栽培技术
评论
0/150
提交评论