《Linux操作系统与程序开发环境.ppt》由会员分享,可在线阅读,更多相关《Linux操作系统与程序开发环境.ppt(65页珍藏版)》请在三一办公上搜索。
1、第二章 Linux操作系统与程序开发环境,第二章 Linux操作系统与程序开发环境,2.1 Linux概述 2.1.1 Linux简介 2.1.2 Linux系统的主要特点 2.1.3 Linux的组成及基本概念 2.1.4 Linux的版本2.2 Linux基本命令 2.2.1 Linux 的登录和退出 2.2.2 Linux文件命令 2.2.3 Linux目录和层次命令 2.2.4 Linux查找命令 2.2.5 Linux目录和文件安全性命令 2.2.6 Linux进程命令,2.3 使用vi编辑文件 2.3.1 vi的启动与退出 2.3.2 vi的两种模式 2.3.3 基本vi命令 2.
2、3.4 使用vi查找和替换 2.3.5 编辑多个文件,2.1 Linux概述,2.1.1 Linux简介,简单地说,Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intel x86系列CPU的计算机上。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。Linux最早由一位名叫Linus Torvalds的计算机爱好者开发,他的目的是设计一个代替Minix的操作系统,这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有Unix操作系统的全部功能。,2.1.1 Linux简介,Linux是一个UNIX操作系统的克隆,可以免费使
3、用,遵循GPL声明,可以自由修改和传播。Linux包含了人们希望操作系统拥有的所有功能特性,这些功能包括真正的多任务、虚拟内存、世界上最快的TCP/IP驱动程序、共享库和多用户支持。Linux现在是个人计算机和工作站上的UNIX类操作系统。它不仅继承了UNIX的特征,而且在许多方面超过了UNIX。,2.1.2 Linux系统的主要特点,开放性:指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。多用户:是指系统资源可以被不同用户使用,每个用户对自己的资源(例如:文件、设备)有特定的权限,互不影响。多任务:它是指计算机同时执行多个程序,而且各个程序的运行互相独立。良好的用户界面:L
4、inux向用户提供了两种界面:用户界面和系统调用。Linux还为用户提供了图形用户界面。它利用鼠标、菜单、窗口、滚动条等设施,给用户呈现一个直观、易操作、交互性强的友好的图形化界面。,2.1.2 Linux系统的主要特点,设备独立性:是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以象使用文件一样,操纵、使用这些设备,而不必知道它们的具体存在形式。Linux是具有设备独立性的操作系统,它的内核具有高度适应能力。提供了丰富的网络功能:完善的内置网络是Linux一大特点。可靠的安全系统:Linux采取了许多安全技术措施,包括对读、写控制、带保护的子系统、审计跟踪
5、、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。良好的可移植性:是指将操作系统从一个平台转移到另一个平台使它仍然能按其自身的方式运行的能力。Linux是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。,2.1.3 Linux的组成及基本概念,Linux的组成部分:LINUX的内核:内核是系统的核心,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。LINUX SHELL:Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。LINUX文件系统:Linux文件系统是文件存放在磁盘等存储设备上的组织方法。Linux能支持多种文件系统,
6、如EXT2、EXT3、FAT、VFAT、ISO9660、NFS、SMB等。LINUX应用系统:标准的Linux系统都有一整套称为应用程序的程序集,包括文本编辑器、编程语言、X-Window、办公套件、Internet工具、数据库等。,2.1.3 Linux的组成及基本概念,Linux的基本概念:(1)磁盘及分区一块硬盘可以分为一个主分区和若干个扩展分区(逻辑分区),Linux操作系统可以安装在任何地方,因此许多机器可以做成多个windows系统及Linux多启动。在Linux下没有盘符的概念,不管是什么存储盘,在它里面都是一样对待的,系统里只有从根目录往下一层层的目录,一个盘可以多个目录,一个
7、目录也可能会跨多个盘。,2.1.3 Linux的组成及基本概念,Linux的基本概念:(2)理解Linux文件系统标准/:根目录,系统中所有的目录都是从根目录开始。/bin:存放常用命令。/boot:引导核心的程序目录/dev:外部设备名/etc:(etcetera)系统管理所要的配置文件和子目录/home:存放用户主目录的地方,一般是/home/用户名。/lib:(library)系统基本的动态链接库/lost+found/opt:optional(可以选择的)/proc:虚拟系统,是由系统初起时内存中产生的/root:超级用户默认的主目录;/sbin:系统管理员使用的系统管理程序;/tmp
8、:存放各程序执行时所产生的临时文件;/usr:占空间最大的目录,用户的很多应用程序和文件几乎全在这个目录中;/var:存放一些系统记录文件和配置文件;,2.1.3 Linux的组成及基本概念,Linux的基本概念:(3)工作方式字符工作方式和图形工作方式 虽然图形用户界面操作简单,但是字符操作方式仍然沿用至今,这主要是因为:1.在字符操作方式下可以高效地完成所有的任务,尤其是系统管理任务。2.系统管理任务通常在远程进行,而远程登录后进入的是字符工作方式。3.由于使用字符界面不用启动图形工作环境,大大地节省了系统资源开销。,2.1.4 Linux的版本,2.2 Linux基本命令,2.2.1 L
9、inux 的登录和退出,登陆Linux系统我们对系统的使用都是从登录开始的。首先要求使用者必须拥有一个合法的个人账号,只有系统认可了的账号,才会获得系统的使用权。系统有两种用户:超级用户root和一般用户。,2.2.1 Linux 的登录和退出,登陆Linux系统由系统管理员开设账户,设密码。用户登录Linux:在Windows 和 Linux 下都可用 在Linux 下用 ssh-l 用户名 可用Putty、SSH Secure Shell Client、Xanager、X-win32、exceed等软件当用户正确地输入用户名和口令后,就能合法地进入系统。屏幕显示:rootloclhost/
10、root#这表明已经进入系统,此处的“#”符号是超级用户的系统提示符,而普通用户的提示符是“”。,2.2.1 Linux 的登录和退出,退出Linux系统当用户执行完各种操作后,就要及时退出系统,这是一个良好的习惯,即使是暂时离开机器也同样如此。退出的操作很简单,只需键入下面的命令即可:zhang loclhost zhang exit 在提示符后键入命令exit后回车即可退出系统。有的系统中用logout,或按下Ctrl+d也能退出或注销用户,但我们推荐使用exit命令。,2.2.2 Linux文件命令,在Linux系统中,几乎所有内容包括文档、命令、设备和目录等都组织成文件的形式,用文件来
11、管理,常用的文件命令有:1.cat、more、less命令 2.ls命令3.cp命令4.rm命令5.mv命令,2.2.2 Linux文件命令,在Linux系统中,几乎所有内容包括文档、命令、设备和目录等都组织成文件的形式,用文件来管理,常用的文件命令有:1.(1)cat命令 功能:显示文本文件内容 语法:cat 文件名称 范例:cat file1 显示file1的内容。cat file1 file2 file3 把file1和file2的内容输入到file3中。,2.2.2 Linux文件命令,1.(2)more命令 功能:一次以一个page显示 语法:more 文件名称 描述:通常在看一篇很
12、长的文件时都希望是从头 看到尾,在Linux中,more命令可以以一个page为单位来浏览文件。当使用more时,可看到屏幕的左下方有一个“-more-”的信息,这时若按下回车键,则会显示下一行;若按下空格键,则会显示下一个page。,2.2.2 Linux文件命令,1.(3)less命令 功能:与more命令相似,一次以一个page显示,可以前翻、后翻 语法:less 文件名称 描述:若按下空格键,则会显示下一个page,按下回车键则一行行地下翻,按下b键往上翻一页。,2.2.2 Linux文件命令,2.ls命令命令名称:ls功能:查看目录及文件 语法:ls描述:ls命令用来浏览文件与目录,
13、这个动作相当于DOS中的dir命令。列出所有文件和目录(包含以.开头的隐藏文件)ls a 列出所有文件和目录的详细信息 ls l(或者 ll),2.2.2 Linux文件命令,3.cp命令 命令名称:cp 功能:拷贝文件 语法:cp 选项 源文件 目的地 描述:其实cp的语法与DOS的copy语法大致相同。须注意的是,在使用cp时一定要有目的地才行,在DOS中做copy 时,有时可省略目的地,但在Linux中就无法这样做。在cp中也可以使用通配符,像“*”、“?”等,例如,我们要将root目录内的所有文件,但不包括隐藏文件,拷贝至根目录下的temp内,其命令为:#cp/root/*/temp
14、若要拷贝所有小写字母开头的隐藏文件,其命令为:#cp/root/.a-z*/temp,2.2.2 Linux文件命令,3.cp命令 常用选项说明-a在备份中保持尽可能多的源文件结构和属。-b作将要覆盖或删除文件的备份。-f删除已存在的目标文件。-i提示是否覆盖已存在的目标文件。-p保持原先文件的所有者,组权限和时间标志-r递归拷贝目录,把所有目录文件当普通文件拷贝。-R递归拷贝目录。,2.2.2 Linux文件命令,4.rm命令命令名称:rm功能:删除文件 语法:rm 选项 文件 描述:rm与DOS的del命令有些类似之处,不同的是,rm功能的强大与其相对杀伤力远不是DOS的del可以相比。只
15、要是文件,不管是否隐藏,或是文件使用权限设置成只读,rm皆可删除,在此要注意的是已删除的文件是无法恢复的,所以在使用rm时要特别小心。例如,我们删除temp目录下的file1文件,可用:cd temp;rm file1 在Linux中要一次键入两个不同的命令时,只需在命令与命令之间加上分号即可,这样Linux便会依照排列的先后次序来执行,在本例中,会先执行cd temp,再执行 rm file1。,2.2.2 Linux文件命令,4.rm命令常用选项说明-r删除文件列表中指定的目录,若不用此标志则不删除目录-I指定交互模式。在执行删除前提示确认。任何以Y开始的响应都表示肯定;其他则表示否定。-
16、f指定强行删除模式。通常,在删除文件权限不可满足时rm提示。本标志强迫删除,不用提示。-V在删除前回显文件名。,2.2.2 Linux文件命令,5.mv命令 命令名称:mv 功能:文件更名或搬移 语法:mv 文件名称 搬移的目的地(或更改的新名)描述:有的时候我们会做文件更名的操作,或是移动文件。其实文件更名与移动文件的操作原理是一样的,差别只是路径的不同。mv命令通常被用来移动文件,例如,把现在所在的目录中的netscape文件移到/usr内,可用:mv netscape/usr,2.2.3 Linux目录和层次命令,同dos/windows操作系统一样,在linux系统中文件也是按目录保存
17、在一个树形目录层次结构中的,目录层次的顶部是“根”目录,使用符号“/”。常用的目录和层次命令包括:1.pwd命令 2.cd命令3.mkdir、rmdir命令,2.2.3 Linux目录和层次命令,1.pwd命令 命令名称:pwd 功能:显示当前工作目录 语法:pwd 描述:pwd命令显示当前目录在文件系统层次中 的位置。,2.2.3 Linux目录和层次命令,2.cd命令 命令名称:cd 功能:切换目录 语法:cd 目录名称 描述:cd除了有切换目录的功能外,还有一个功能就是不管在哪个目录内,只要输入cd命令不用接任何参数,就可回到用户目录(home directory)内。cd.回到上层目录
18、,2.2.3 Linux目录和层次命令,3.mkdir、rmdir命令 命令名称:mkdir/rmdir 功能:创建目录和删除目录 语法:mkdir 目录名称 rmdir 目录名称 描述:在Linux中用mkdir命令,后面输入欲创建的目录名即可在当前目录中建立一个新目录,用rmdir并指定欲删除的目录即可删除指定的目录,操作方法与DOS中的md、rd是完全相同的,差别只是命令的名称不同而已。另外,在使用rmdir时,要确保该目录内已无任何文件存在,否则该命令不成功。,2.2.4 Linux查找命令,1.find命令2.grep命令,2.2.4 Linux查找命令,1.find命令命令名称:f
19、ind功能:搜寻文件与目录 语法:find 目录名 选项,2.2.4 Linux查找命令,1.find命令,2.2.4 Linux查找命令,2.grep命令 命令名称:grep 功能:在文件中查找字符串 语法:grep 选项“字符串”文件名 选项 说明-v 列出不匹配串或正则表达式的行。-c 对匹配的行计数。-l 只显示包含匹配的文件的文件名。-h 抑制包含匹配文件的文件名的显示-n 每个匹配行只按照相对的行号显示。-i 产生不区分大小写的匹配,缺省状态是区分大小写。匹配字符串:希望在文件中查到的串。如:$grep“main”hello.c,2.2.5 Linux目录和文件安全性命令,Linu
20、x系统中每一个文件或目录都明确地定义其拥有者(owner)、组(group)和它的使用权限等。用户可用下面的命令规定自己主目录下的文件权限,以保护自己的数据和信息,防止他人非法使用。1.chown命令2.chgrp命令3.chmod命令,2.2.5 Linux目录和文件安全性命令,1.chown命令 命令名称:chown 功能:改变文件拥有者 语法:chown 用户账号 文件或目录名称 使用人:该文件或目录的拥有者和root 用户,2.2.5 Linux目录和文件安全性命令,2.chgrp命令 命令名称:chgrp 功能:改变文件的所属组 语法:chgrp 组名称 文件或目录名称 使用人:ro
21、ot 描述:该命令和chown用法一样,其功能是把文件或目录所属组改成另一个组。,2.2.5 Linux目录和文件安全性命令,3.chmod命令 命令名称:chmod 功能:修改文件的权限 语法:chmod 权限参数 文件或目录名称 使用人:每一位用户 描述:首先介绍文件权限。每个文件或目录都有一组9个权限位,每三位被分为一组,他们分别是属主权限位(占三个位置)、用户组权限位(占三个位置)、其它用户权限位(占三个位置)。比如rwxr-xr-x,我们数一下就知道是不是9个位置了,正是这9个权限位来控制文件属主、用户组以及其它用户的权限。要设置这些文件的权限就用 chmod这个命令来设置,然而在使
22、用chmod 之前需要先了解权限参数的用法。权限参数可以有两种使用方法:英文字母表示法和数字表示法。,2.2.5 Linux目录和文件安全性命令,3.chmod命令(1)英文字母表示法 一个文件用十个小格位记录文件的权限,第一小格代表文件类型。“-”表示普通文件;“d”表示目录文件;“b”表示块特别文件;“c”表示字符特别文件。接下来是每三小格代表一类型用户的权限。前三小格是用户本身的权限,用u代表;中间三小格代表和用户同一个组的权限,用g代表;最后三小格代表其他用户的权限,用o代表。即:-rwx-属于用户存取权限,用u代表;-rwx-属于组用户存取权限,用g代表。-rwx属于其他用户存取权限
23、,用o代表。而每一种用户的权限就直接用r、w、x来代表对文件可读、可写、可执行,然后再用+,-或=将各类型用户代表符号u、g、o和 rwx3个字母链接起来即可。,2.2.5 Linux目录和文件安全性命令,3.chmod命令范例:-rwx-chmod u+rwx file1 用户本人对file1可以进行读写执行的操作;-rw-chmod u-x file1 删除用户对file1的可执行权限;-rw-rw-r-chmod g+rw,o+r file1 同组用户对file1增加权限为能读写,其他用户则只 能读。,2.2.5 Linux目录和文件安全性命令,3.chmod命令(2)数字表示法数字表示
24、法是用三位数字XXX,最大值为777来表示的。第一个数字代表用户存取权限,第二个数字代表同组用户使用权限,第三个数字代表其他用户存取权限。前面介绍的可读的权限r用数字4表示,可写的权限w用2表示,而可执行的权限x用1表示,即:r=4 w=2 x=1 假设用户对file1的权限是可读可写可执行rwx,用数字表示则把4、2、1 加起来等于7,代表用户对file1这个文件可读可写可执行,这里rwx等价于 4+2+1=7。,2.2.5 Linux目录和文件安全性命令,3.chmod命令 至于同组用户和其他用户的权限,就顺序指定第2位数字和第3位数字即可。如果不指定任何权限的话,就要补0!下面举几个范例
25、就明白了,请大家注意数字的变化。范例:-rwx-chmod 700 file1 指定用户本人对file1的权限是可读,可写,可执行;-rw-chmod 600 file1 指定用户本人对file1的权限是可读,可写;-rwxrwxrwx chmod 777 file1 指定所有用户对file1的权限是可读,可写,可执行。总之,数字表示法就是将3位数字分成3个字段,每个字段都是4、2、1相加任意的组合。,2.2.6 Linux进程命令,1.ps命令2.kill命令,2.2.6 Linux进程命令,1.ps命令 命令名称:ps 功能:查询正在执行的进程 语法:ps 可选参数 描述:ps命令提供Li
26、nux系统中正在发生的事情的一个快照,能显示正在执行进程的进程号、发出该命令的终端、所使用的CPU时间以及正在执行的命令。,2.2.6 Linux进程命令,2.top命令 命令名称:top 功能:显示系统当前的进程及其状态 语法:top 可选参数 描述:top命令和ps命令的基本作用是相同的,但是top提供了实时的对系统处理器的状态监视,是一个动态显示过程,可以通过用户按键来不断刷新当前状态。如果在前台执行该命令,它将独占前台,直到用户终止该程序为止。,2.2.6 Linux进程命令,3.kill命令 命令名称:kill 功能:终止正在执行的进程 语法:kill 进程号 例如:kill-9 P
27、ID#无条件删除进程号为PID#的进程。相关命令还有:w,who等,2.3 使用vi编辑文件,2.3使用vi编辑文件,vi的名字取自于visual,意为“直观”,它是一个全屏幕文本编辑程序。在Linux系统中vi是最常用的编辑程序,它的文本编辑功能十分强大,但使用起来比较复杂。初学者可能感到困难,经过一段时间的学习和使用后,你就会体会到使用vi非常方便。Linux系统中的vi其实是vim。vi与vim的用法很像,因为vim是vi的增强版,所以vi的功能vim都有,而且vim新增了许多vi没有的功能,它比vi容易使用。本章介绍vi编辑程序的两种工作模式,即命令模式和输入模式。,2.3.1 vi的
28、启动与退出,1.vi的启动输入vi命令后,便进入全屏幕编辑环境,此时的状态为命令模式。(1)vi进入vi的一个临时缓冲区,光标定位在该缓冲区第1行第1列的位置上。(2)vi file1如果file1文件不存在,将建立此文件;如该文件存在,则将其拷贝到一个临时缓冲区。光标定位在该缓冲区第1行第1列的位置上。(3)vi+file1如果file1文件不存在,将建立此文件;如该文件存在,则将其拷贝到一个临时缓冲区。光标定位在文件最后1行第1列的位置上。(4)vi+N file1(N:为数字)如果file1文件不存在,将建立此文件;如该文件存在,则将其拷贝到一个临时缓冲区。光标定位在文件第N行第1列的位
29、置上。(5)vi+/string file1如果file1文件不存在将建立此文件;如该文件存在则将其拷贝到一个临时缓冲区。光标定位在文件中第一次出现字符串string的行首位置。,2.3.1 vi的启动与退出,2.退出vi 建议在退出vi前,先按ESC键,以确保当前vi的状态为命令方式,然后再键入“:”(冒号),输入下列命令,退出vi。(1):w 将编辑缓冲区的内容写入文件,则新的内容就替代了原始文件。这时并没有退出vi,必须进一步输入下述命令才能退出vi::w filename(存入指定文件):q(2):wq即将上面的两步操作可以合成一步来完成,先执行w,后执行q。(3):x 功能与(2)等
30、价。(4):q!(或:quit)强行退出vi,使被更新的内容不写回文件中。仅键入命令:q时,如vi发现文本内容已被更改,将提示用户使用“:quit”命令退出。,2.3.2 vi的两种模式,当vi工作在命令模式下,输入的字符被视为执行特定vi功能的命令;而工作在输入模式下,输入的字符是编辑文件的正文。命令模式是vi的默认模式,命令模式下输入英文大小写字母的含义是有区别的。两种模式的切换见图。vi模式转换示意图,2.3.2 vi的两种模式,在命令模式下,你所能进行的操作有移动光标在屏幕上的位置,标记、删除、移动、复制字符或文本区块,还可以将文件写入或退出编辑器,亦可设置编辑环境,如寻找字符串、列出
31、行号等。此外在系统提示符下输入vi及文件名称后,即进入vi全屏幕编辑画面(命令模式)。只有在输入模式下,才可进行文字输入,按ESC键可以回到命令模式。在命令模式下可按“i”或“a”或“o”等键进入输入模式。,2.3.2 vi的两种模式,i在目前光标前插入所要输入之文字。a在目前光标后开始输入文字。o在当前光标所在行下新增一空行,并从行首开始输入文字。I插于行首。A插于行尾。O在当前光标所在行上新增一空行,并从行首开始输入文字。按下ESC键随时可返回vi的命令模式。如果不能确定现在vi是在哪个模式下,按下ESC键以使其在命令模式下,然后再从这里继续;如果按下ESC键时已经在命令模式了,系统会鸣叫
32、且屏幕闪一下,通知你已在命令模式中。,2.3.3 基本vi命令,1.移动光标移动光标h、j、k、l:分别控制光标左、下、上、右移一格。Ctrl+b:上滚一屏。Ctrl+f:下滚一屏。Ctrl+d:下滚半屏。Ctrl+u:上滚半屏。G:移到文件最后。w:移到下个字的开头。b:跳至上个字的开头。,2.3.3 基本vi命令,2.删除x:删除当前光标所在后面一个字符。nx:删除当前光标所在后面n个字符。例如,5x表示删除5个字符。dd:删除当前光标所在行。ndd:删除当前光标所在后面n行。例如,5dd表示删除自光标算起的5行。:l,nd:例如,:1,12d表示删除自行1至行12的文字。X:删当前光标的
33、左字符。D:删至行尾。,2.3.3 基本vi命令,3.更改cw:更改光标处的字到此单字的字尾处。cnw:例如,c3w表示更改3个字。cc:修改行。C:替换到行尾。4.取代r:取代光标处的字符。R:取代字符直到按ESC为止。,2.3.3 基本vi命令,5.复制yw:拷贝光标处的字到字尾至缓冲区。P:把缓冲区的资料贴上来。yy:拷贝光标所在之行至缓冲区。nyy:例如,5yy,拷贝光标所在之处以下5行至缓冲区。6.复原u:复原至上一操作。g:列出行号,及相关信息。7.列出行号:set nu(nu为行数),2.3.3 基本vi命令,8.寻找字符串/word由首至尾寻找“word”字符串,按n可往下继续
34、找。?word由尾至首寻找“word”字符串,按N可往前继续找。9.跳行:100可跳至第100行。10.重复上一个命令.重复上一个命令。,2.3.4 使用vi查找和替换,vi提供了几种定位查找一个指定的字符串在文件中位置的方法。同时还提供一种功能强大的全局替换功能。1.查找一个字符串一个字符串是一行上的一个或几个字符。为查找一个字符串,在vi命令模式下键入“/”,后面跟要查找的字符串,再按回车。vi将光标定位在该串下一次出现的地方上。键入n跳到该串的下一个出现处,键入N跳到该串的上一个出现处。为了在文件中回头查找,使用?代替/。在此情况下,键入n跳到该串的上一个出现处,键入N跳到该串的下一个出
35、现处。,2.3.4 使用vi查找和替换,如果vi找到要求的串,光标会停留在该串第一次出现的地方。如果没有找到该串,vi会在屏幕的最后一行显示pattern not found。查找通常是区分大小写的,如果希望vi在查找过程中忽略大小写,则键入:set ic。要使其变回默认状态,则键入:set noic。某些特殊字符(/&!.*?)对查找过程有特殊意义,因此如果这些字符出现在查找串中必须进行转意。为转意一个特殊字符,需要在该字符前面加一个反斜杠()。例如,要查找字符串anything?,则键入/anything?再按回车键。,2.3.4 使用vi查找和替换,2.精确查找字符串在vi中可以通过在字
36、符串中加入如下特殊字符,从而使得查找更加精确。匹配行首,字符串要以开头匹配行尾,字符串要以结束匹配词首,字符串的串首键入匹配任意字符,字符串的要匹配的位置键入一个点(.)例如,要查找一个以search为行首的行,则键入/search,要查找一个以search为行尾的行,则键入/search。,2.3.4 使用vi查找和替换,3.替换一个字符串替换字符串是以查找为基础,所有用于查找的特殊匹配字符都可以用于查找和替换。替换时要指定替换的范围(1,n),1和n指行号,n为时指最后一行。s是替换命令,g代表全程替换。例如,:l,s/patternl/pattern2/g将行l至结尾的文字,patter
37、nl的字符串改为pattern2的字符串,如无g则仅更换每一行所匹配的第一个字符串,如有g则将每一个字符串均做更换。,2.3.5 编辑多个文件,1.将一个文件插入另一个文件中将另一个文件filename插入当前文件的line行位置。命令格式,:line r filename例如,将文件file1插入到当前文件的当前光标位置,键入,:r file1,2.3.5 编辑多个文件,2.编辑一系列文件要想编辑多个文件,需要在vi命令之后列多个文件名,中间用空格分开。键入:n进入下一个文件。要想跳转到下一个文件,而不保存对当前文件所做的修改,则键入:n!来代替:n。vi file1 file2 file33.文件之间复制行为将行从一个文件file1复制到另一个文件file2,先编辑第一个文件file1,用#yy(#代表数字)把要复制的行拷贝到缓冲区,不退出vi,编辑另一个文件,键入,:n file2再按p键,把缓冲区中的内容贴在当前光标位置。,习题1 vi中拷贝一行文字并粘贴到另一位置用什么命令?2 vi中把某个字符串全程替换为另一个字符串的命令是什么?3 使用vi编辑器在目录里创建一个文本文件,然后输入一段程序,并练习使用各种编辑命令。,