第十三章Linux.ppt

上传人:本田雅阁 文档编号:3127623 上传时间:2019-07-14 格式:PPT 页数:45 大小:397.02KB
返回 下载 相关 举报
第十三章Linux.ppt_第1页
第1页 / 共45页
第十三章Linux.ppt_第2页
第2页 / 共45页
第十三章Linux.ppt_第3页
第3页 / 共45页
第十三章Linux.ppt_第4页
第4页 / 共45页
第十三章Linux.ppt_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《第十三章Linux.ppt》由会员分享,可在线阅读,更多相关《第十三章Linux.ppt(45页珍藏版)》请在三一文库上搜索。

1、第十三章 Linux,第一节 Linux简介 第二节 Linux的特点 第三节 Linux的命令 第四节 Shell简介 第五节 Shell编程,第一节 Linux简介,引子 1991年Linux出现,最早开始于一位名叫Linus Torvalds的芬兰赫尔辛基大学的学生。他的目的是想设计一个代替Minix(是由一位名叫Andrew Tannebaum的计算机教授编写的一个操作系统示教程序)的操作系统,这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有 Unix操作系统的全部功能,因而开始了Linux雏形的设计。,历史 1991年10月,脱离Minix的Linux0.02版发

2、布,可以运行bash和gcc。 1994年初Linux 1.0 诞生,功能已经完备。 1.3版开始向其它硬件平台移植。 2.1版开始Linux走向高端。 2.4.17开始支持超线程。 最新版2.4 2.6(内核版本号)。,FreeBSD和Linux FreeBSD和Linux 是可在i386上运行的免费的操作系统,我们能够使用的也基本上只有这两个UNIX系统: 1. FreeBSD是由最初的BSDUNIX一路发展下来的正统的 UNIX系统,而linux是一个遵循POSIX标准所有系统代码 全部重新编写了的操作系统。 2. FreeBSD是完整的一个操作系统,而linux只是一个内核, 加上各种

3、GNU软件构成的操作系统,所以,才会有很多 的linux系统,如RedHat Linux ,Tubro Linux,兰点linux 等,redhat linux 就是redhat公司对linux内核作必要的修 改,加上redhat挑选的GNU程序构成。,商业版本的Linux操作系统 Redhat Linux :世界上最流行的Linux发行版之一 。 Mandrake Linux:贴近用户的Linux。 Turbo Linux :最早支持中文的Linux 。 Xteam Linux:第一个国产Linux 。 红旗 Linux:中国自己的Linux,政府支持。 蓝点 Linux:中美共同开发的。

4、Linuxware:易于安装 , 极其类似于Unix。,1. 多用户多任务的操作系统。 2. Linux是一款免费的操作系统,基于GPL(General Public License)的架构之下,用户可以通过网络或其他途径免费获 得,并可以任意修改其源代码。 3.完全兼容POSIX 1.0(Portable Operating System Interface for UNIX 一组 OSI 与 IEEE 的规格,用来定义程序与操作系 统 (OS) 之间的接口 (interface),使符合规范的程序能在所有 符合规范的操作系统上执行)标准,这使得可以在Linux下通 过相应的模拟器运行常见的

5、DOS、Windows的程序。,第二节 Linux特点,4. 采用页式存储管理。页式存储管理使Linux能更有效地利用 物理存储空间,页面的换入换出为用户提供了更大的存储空 间。 5. 架构开放,核心程序和系统支持软件大多用 C语言编写。 6. 稳定的系统。Linux 本来就是建立在 Unix 上面发展出来的操 作系统,因此,Linux 具有与 Unix 系统相似的的程序接口跟 操作方式,当然也继承了 Unix 稳定并且有效率的特点。 7. 支持多种文件系统。目前支持的文件系统有:EXT2、 EXT、XIAFS、ISOFS、HPFS、MSDOS、UMSDOS、 PROC、NFS等。Linux最

6、常用的文件系统是EXT2,它的文 件名长度可达255字符,并且还有许多特有的功能,使它比 常规的Unix文件系统更加安全。,Linux环境的建立,1.Linux进入与退出系统 1.1 必须要输入用户的账号,在系统安装过程中可以创建以下两种帐号: 1root-超级用户帐号(系统管理员),使用这个帐号可以在系统中做任何事情。 2普通用户-这个帐号供普通用户使用,可以进行有限的操作。 当用户正确地输入用户名和口令后,就能合法地进入系统。屏幕显示: rootloclhost /root # 这时就可以对系统做各种操作了。注意超级用户的提示符是“#”,其他用户的提示符是“$”。 1.2 虚拟控制台 Li

7、nux是一个真正的多用户操作系统,它可以同时接受多个用户登录,还允许一个用户进行多次登录 ,按一下Alt-F2键,用户又可以看到“login:“提示符,说明用户看到了第二个虚拟控制台。然后只需按Alt-F1键,就可以回到第一个虚拟控制台。 1.3 退出系统 不论是超级用户,还是普通用户,需要退出系统时,在shell提示符下,键入exit(logout,login,halt,reboot)命令即可。,第三节 Linux的命令,2. Linux文件的复制、删除和移动命令 文件系统概述,1 2 3 4 5 6 7,1.文件类型 d 目录。 l 符号链接(指向另一个文件)。 s 套接字文件。 b 块设

8、备文件。 c 字符设备文件。 p 命名管道文件。 - 普通文件,或者更准确地说,不属于以上几种类型的文件。 文件权限 r 读权限 w 写/更改权限 x 执行该脚本或程序的权限 (第一个字符) - 普通文件 (接下来的三个字符) r w - 文件属主的权限 (再接下来的三个字符) r- - 同组用户的权限 (最后三个字符) r- - 其他用户的权限,2. 该文件硬链接的数目 1 。 3. 文件的属主 root 。 4. 文件的属主root所在的缺省组(也叫做root ),组名称 root。 5. 用字节来表示的文件长度,记住,不是K字节 836。 6. 文件的更新时间 May 28 04:15。

9、 7. 文件名 anaconda-ks.cfg。,2. Linux文件的复制、删除和移动命令 2.1 cp命令 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中 : 语法:cp 选项 源文件或目录 目标文件或目录 例如:cp data1.txt data2.txt 2.2 rm命令 删除档案: 参数: -i 删除前逐一询问确认。 -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。 -r 将目录及以下之档案亦逐一删除。 语法:rm options name. 例如:将 Finished 子目录及子目录中所有档案删除 : rm -r Finished,2.3 mv命令 将一个文件改名成

10、另一文件,或将数个文件移至另一目录。 : 参数:-i 若目的地已有同名文件,则先询问是否覆盖旧文件。 语法:mv options source dest mv options source. directory 例如:将档案 aaa 更名为 bbb : mv aaa bbb 将所有的C语言程式移至 Finished 子目录中 : mv -i *.c,3. Linux目录的操作 3.1 创建目录 mkdir 参数 目录名 3.2 列出目录和文件 ls 格式:ls -alrtAFR name. 说明:显示指定工作目录下之内容(列出目前工作目录所含之档案及子目录)。 参数: -a 显示所有档案及目录

11、 (ls内定将档案名或目录名称开头为“.”的视为隐藏档,不会列出) 。 -l 除档案名称外,亦将档案型态、权限、拥有者、档案大小等资讯详细列出。,3.3 目录切换 cd 变换工作目录至 dirName。 其中 dirName 表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的 home directory (也就是刚 login 时所在的目录)。 使用方式 : “ 也表示为 home directory 的意思,“.“ 则是表示目前所在的目录,“ 则表示目前目录位置的上一层目录。 语法: cd dirName 例如: 跳到 /usr/bin/ : cd /usr/bin 跳到自己的

12、 home directory : cd 跳到目前目录的上一层 : cd 3.4 删除目录 rmdir 。,4. Linux文本的操作 4.1 连接文件 cat 说明:把文件串连接后传到基本输出(屏幕或加 fileName 到另一个文件) 例子:cat -n textfile1 textfile2 把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里。 cat -b textfile1 textfile2 textfile3 把 textfile1 和 textfile2 的档 案内容加上行号(空白行不加)之后将内容附加到 textfile3 里。,4.2 显示文件

13、内容 more 例子:more -s testfile 逐页显示 testfile 之档案内容,如有连续两行以上空白行则以一行空白行显示。 more +20 testfile 从第 20 行开始显示 testfile 之档案内容。 4.3 查找文件内容的命令是grep命令 例如:grep test *.conf 4.4 显示目前登入系统的用户信息 who,whoami,pwd,4.5 变更文件或目录的权限 chmod 格式如下 : ugoa.+-=rwxX.,. 其中 u 表示该档案的拥有者 g 表示与该档案的拥有者属于同一个群体(group)者 o 表示其他以外的人 a 表示这三者皆是 +

14、表示增加权限、- 表示取消权限、= 表示唯一设定权限。 r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。 -c : 若该档案权限确实已经更改,才显示其更改动作 -f : 若该档案权限无法被更改也不要显示错误讯息 -v : 显示权限变更的详细资料 -R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更),例如:将档案 file1.txt 设为所有人皆可写 : chmod o+w file1.txt 通过键入 go-rw,告诉系统删除文件 file1.txt 中组群和其它人的读取和写入权限 chmod go-

15、rw file1.txt 4.6 显示目录或文件的大小 du 参数: -a或-all 显示目录中个别文件的大小。 -b或-bytes 显示目录或文件大小时,以byte为单位。 -c或-total 除显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。 例如: du ab test1,4.7 文件打包 tar 格式: tar 选项 文件目录列表 功能: 对文件目录进行打包备份 选项: -c 建立新的归档文件 -r 向归档文件末尾追加文件 -x 从归档文件中解出文件 -O 将文件解开到标准输出 -v 处理过程中输出相关信息 -f 对普通文件操作 -z 调用gzip来压缩归档文件,与-x联用

16、时调用gzip完成解压缩 -Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩 例如: tar cvf t1bak.tar /root/test/t1 tar -xvf filename.tar这个命令不会删除 tar 文件,但是它会把被解除归档的内容复制到当前的工作目录下,并保留归档文件所使用的任何目录结构。,4.8 文件压缩与解压 gzip,unzip 参数: -q或-quiet 不显示警告信息。 -r或-recursive 递归处理,将指定目录下的所有文件及子目录一并处理。 例子: 1.压缩一组文件为tar.gz后缀。 # tar cvf backup.t

17、ar /etc #gzip -q backup.tar 或 # tar cvfz backup.tar.gz /etc/ 2.释放一个后缀为tar.gz的文件。 #gunzip backup.tar.gz #tar xvf backup.tar 或 # tar xvfz backup.tar.gz 课后练习: zip 和 unzip,5. Linux文件系统 5.1 关键目录结构 /bin 这个目录存放着最经常使用的命令。 /boot 这里存放的是启动Linux时使用的一些核心文件,包括一些链接文件以及镜像文件。 /dev 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访

18、问文件的方式是相同的。 /etc 这个目录用来存放所有的系统管理所需要的配置文件和子目录。 /home 用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。 /lost+found 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 /mnt 在这里面中有四个目录,系统提供这些目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/cdrom上,然后进入该目录就可以查看光驱里的内容了。,/proc 这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。 /root 该目录为系统管理员,也称

19、作超级权限者的用户主目录。 /sbin s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。 /tmp 这个目录是用来存放一些临时文件的。 /usr 我们要用到的很多应用程序和文件几乎都存放在usr目录下。,/usr/X11R6 存放X-Window的目录; /usr/bin 存放着许多应用程序; /usr/sbin 给超级用户使用的一些管理程序就放在这里; /usr/doc 这是Linux文档的大本营; /usr/include Linux下开发和编译应用程序需要的头文件,在这里查找; /usr/lib 存放一些常用的动态链接共享库和静态档案库; /usr/local

20、 这是提供给一般用户的/usr目录,在这里安装软件最适合; /usr/man man在Linux中是帮助的同义词,这里就是帮助文档的存放目录; /usr/src Linux开放的源代码就存在这个目录; /var 这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。,5.2 inode和EXT2,EXT3 Ext2的特点 1.Ext2 可以支持256字节的长文件名 2.簇最大为 4KB, 则单一文件大小上限为 2048GB, 而文件系统的容量上限为 6384GB 3.ext2在写入文件内容的同时并没有同时写入文件的meta-data(和文件有关的信

21、息,例如:权限、所有者以及创建和访问时间)。换句话说,Linux先写入文件的内容,然后等到有空的时候才写入文件的meta-data。这样若出现写入文件内容之后但在写入文件的meta-data之前系统突然断电,就可能造成在文件系统就会处于不一致的状态。在一个有大量文件操作的系统中出现这种情况会导致很严重的后果。 4.另外但由于目前核心 2.4 所能使用的单一分割区最大只有 2048GB,尽管文件系统的容量上限为 6384G但是实际上能使用的文件系统容量最多也只有 2048GB。 ext3的优点:安全性,完整的日志系统(ext2区别),inode(index node)文件结构:记录文件的类型、大

22、小、权限、所有者等属性,以及指向数据块(block)的指针。,Inode相关命令: ls i df -i,6. 组和用户系统 6.1 创建用户 useradd(adduser) 用户名 passwd 用户名 账号名称 用户口令 用户标识符 组标识符 用户相关信息 用户目录 用户环境 6.2 停用或删除用户 停用用户 vi /etc/passwd中的用户注释掉(#) Userdel r 用户名 (删除用户的所有目录),6.1 创建组 groupadd 组名 组名称;加入该组的口令;组标识符(0499系统用);用户账号(自建组一般是空白的) 6.2 删除组 groupdel 组名,7. 挂接及mo

23、unt,umount的使用 在Linux下使用优盘 在Linux下使用光驱 1)创建一个目录,用来挂上光盘目录树: mkdir /mnt/cdrom 目录名可以根据你自己的习惯命名; 2)插入光盘,执行“mount t iso9660 /dev/hdc /mnt/cdrom”命令; 注意:如果你的光驱接在第一硬盘线的从盘上,需将/dev/hdc改为/dev/hdb; 3)然后你就可以通过访问/mnt/cdrom来实现对光盘访问; 4)当你不使用时,执行“umount /mnt/cdrom”,再取出光盘。 在Linux下使用软驱 1) 与光盘类似,创建floppy目录; 2) 软盘插入后,执行“

24、mount t msdos /dev/fd0 /mnt/floppy”命令 注意:若是软盘中是长文件名格式的,将上条命令中的“msdos”改为“vfat”, 若是 Linux文件格式,则去掉“-t msdos”; 3) 当你不使用时,执行“umount /mnt/floppy” ”,再取出软盘。,8. 管理进程 如何管理进程? 进程是程序的一次执行。可以使用“ps auxw”列出在当前正在执行的进程的详细信息,包括每个进程都有的进程ID号。你可以通过“kill 进程ID号”来终止这个进程。,9. vi编辑器(全屏幕编辑器) 另一种是emacs编辑器。 vi的三种操作模式 编辑模式 插入模式 命

25、令模式,1.进入和退出 :q; :q!; :wq 2.复制和粘贴 nyy ;nyw;p 3.查找和替换 在命令模式下,“/查找的字符串” / 字符串在光标之后寻找该字符串 ? 字符串在光标之前寻找该字符串 n 往下继续查找下一个相同的字符串 N 往上继续查找下一个相同的字符串 4.上下左右 h(左)l(右)j(下)k(上),多文档编辑 编辑其它文档:edit foo.txt 编辑下一个文档:next 编辑前一个文档:previous 如果你想查看整个列表中就有哪些文件, 使用命令 :args,第四节 Shell简介,Shell是什么 Shell是一种具备特殊功能的程序,它是介于使用者和 UNI

26、X/Linux 操 作系统之核心程序(kernel)间的一个接口。其实shell 也是一支程序,它 由输入设备读取命令,再将其转为计算机可以了解的机械码,然后执行它。 用户与Linux的接口 命令解释器 支持复杂的编程语言(通过在多条命令的序列中使用变量和流程控制,Shell可以作为一名复杂的编程语言。) Shell有很多种,如:csh,tcsh,pdksh,ash,sash,zsh,bash等。Linux的缺省Shell为bash(Bourne Again Shell)。,各种操作系统都有它自己的 shell,以 DOS 为例,它的 shell 就是 檔。如同 DOS 下有 NDOS,4D

27、OS,DRDOS 等不同的命令解译程序可以取代标准的 ,UNIX 下除了 Bourne shell(/bin/sh) 外还有 C shell(/bin/csh)、Korn shell(/bin/ksh)、Bourne again shell(/bin/bash)、Tenex C shell(tcsh) 等其它的 shell。 UNIX/Linux 将 shell 独立于核心程序之外,使得它就如同一般的应用程序,可以在不影响操作系统本身的情况下进行修改、更新版本或是添加新的功能。,编写Shell的工具 Linux下的文本编辑器vi等。 执行Shell的方法 一、设定权限 # chmod u+x

28、 hello # ./hello 二、bash内建的指令 # source hello # . hello 三、解释器执行 # sh hello或bash hello,第五节 Shell编程,用户定义的变量 变量名值 例子: $myname=gyl $echo $myname gyl $echo myname myname 位置变量 $0 $1 $2,Shell下的变量赋值,特殊字符 :取代命令字符。Alias dir=ls -al *:对应任何字符串,字符或空字符串。 ?:对应任何单一字符 .:当前目录 :上层目录 ;:多命令分割 :把执行结果输入到一个文件中,若该文件已经存在,则原来内容会

29、被删除 :把执行结果附加到一个已存在的文件后面 :转义字符,解除特殊符号的含义 |:管道,前一个命令的结果给下一个命令用 |:OR运算 :对应括号中任意范围的字符 !:排除对应括号中任意范围的字符,Shell下的特殊字符,特殊指令 test指令:有关文件方面的测试 f 文件名 若文件存在并且是普通文件,则测试条件为真 d文件名 若文件存在并且是目录文件,则测试条件为真 特殊字符 “” 内的是普通字符(除了$,倒引号,反斜杠外) 普通字符 被shell当命令对待,Shell下的特殊字符,If语句 if 测试条件 then 命令表1 else 命令表2 fi 例子: #!/bin/bash # f

30、ilename=ifdemo if test d “$1” then echo $1 else mkdir $1 fi,Shell下的控制结构,循环语句(while,until,for) 1. while 测试条件 do 命令表 done 2. until 测试条件 do 命令表 done 3. for 变量 in 参数表 do 命令表 done,Shell下的控制结构,循环语句例子 #!/bin/bash # filename=whiledemo while test d $1 do sleep 5 done echo dir $1 does not exist,Shell下的控制结构,永远的Hello World #!/bin/sh # Filename=Hello echo “Hello World!” 新建和移动 #!/bin/bash # filename tt srccp=$1/* paracp=-fr if test d $2 then # rm -fr $2 # mkdir $2 cp $paracp $srccp $2 else mkdir $2 cp $paracp $srccp $2 fi,Shell编程的用例,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1