实验二vi文本编辑器的使用
更新时间:2024-04-10 22:47:01 阅读量: 综合文库 文档下载
实验二、Vi文本编辑器和GCC编译器的使用
一、实验目的:
1、掌握Linux系统终端方式使用的编辑器vi;
2、学习vi的启动、存盘、文本输入、现有文件的打开、光标移动、复制/剪贴、查找/替换等命令。 3、掌握GCC编译器的使用。 二、实验内容:
1、用Vi文本编辑器对你的计算机进行网络配置。网络配置文件有:
文件1:/etc/sysconfig/network
文件2:/etc/sysconfig/network-scripts/ifcfg-eth0 文件3:/etc/resolv.conf
要求:在图形界面下配置,看相应配置文件有没有被修改;修改配置文件看图形界面是否被修改。
2、将显示器配置文件(自己查),复制到//home目录下(一定要复制,对副本进行操作,否则出现异常后果自负),并重命名为i.打开i文件,设置行标,将第89行至第96行的内容复制到第116行,并将第62行至第86行的Option替换为type.并将整篇文章中的Section替换成choose.将修改后的文件另存为j.并将j复制到/usr目录下,并重命名为k.
3、在vi中编写一个abc.c程序,对程序进行编译、连接、运行。具体如下: [student@enjoy abc]$ vi abc.c main() {
int i,sum=0; for(i=0;i<=100;i++) {
sum=sum+i; }
printf(\[student@enjoy abc]$ gcc -o abc abc.c
[student@enjoy abc]$ ls abc abc.c
[student@enjoy abc]$ ./abc 1+2+3+...+99+100=5050 [student@enjoy abc]$ [student@enjoy abc]$
4、从如上内容的基础上总结vi的启动、存盘、文本输入、现有文件的打开、光标移动、复制/剪贴、查找/替换等命令。 5、编写一个程序解决“鸡兔同笼”问题。 参考程序:
#include
printf(\请输入头数和脚数:\scanf(\x=(4*h-f)/2; y=(f-2*h)/2;
printf(\鸡=%d 兔子=%d\}
运行结果:
请输入头数和脚数:18,48 鸡=12 兔子=6
注:以上实验结果抓图后,做成电子文档的实验报告发送到教师机上。
三、Vi文本编辑器的使用
Linux系统提供了一个完整的编辑器家族系列,如Ed、Ex、Vi和Emacs等,按功能它们可以分为两大类:行编辑器(Ed、Ex)和全屏幕编辑器(Vi、Emacs)。行编辑器每次只能对一行进行操作,使用起来很不方便。而全屏幕编辑器可以对整个屏幕进行编辑,用户编辑的文件直接显示在屏幕上,修改的结果可以立即看出来,克服了行编辑的那种不直观的操作方式,便于用户学习和使用,具有强大的功能。 Vi是Linux系统的第一个全屏幕交互式编辑程序,它从诞生至今一直得到广大用户的青睐,历经数十年仍然是人们主要使用的文本编辑工具,足见其生命力之强,而强大的生命力是其强大的功能带来的。 1、关于文本编辑器;
文本编辑器有很多,比如图形模式的gedit、kwrite、OpenOffice ... ... ,文本模式下的编辑器有vi、vim(vi的增强版本)和nano ... ... vi和vim是我们在Linux中最常用的编辑器。我们有必要介绍一下vi(vim)最简单的用法,以让Linux入门级用户在最短的时间内学会使用它。nano 工具和DOS操作系统下的edit操作相似,使用简单,我们不作介绍了,如果您有兴趣,不妨尝试一下; 2、vi 编辑器;
为什么要学会简单应用vi
vi或vim是Linux最基本的文本编辑工具,vi或vim虽然没有图形界面编辑器那样点鼠标的简单操作,但vi编辑器在系统管理、服务器管理中,永远不是图形界面的编辑器能比的。当您没有安装X-windows桌面环境或桌面环境崩溃时,我们仍需要字符模式下的编辑器vi,vi或vim 编辑器在创建和编辑简单文档最高效的工具。 3、vi 编辑器的使用方法 3.1 如何调用vi
[root@localhost ~]# vi filename
3.2 vi 的三种命令模式;
命令模式(Command mode ):用于输入命令; 插入模式(Insert mode) :用于插入文本;
末行模式(last line mode):用于存储文件或离开编辑器,也可设置编辑环境. 3.3 文件的保存和退出;
Command 模式是vi或vim的默认模式,如果我们处于其它命令模式时,要通过ESC键切换过来。当我们按ESC键后,接着再输入:号时,vi会在屏幕的最下方等待我们输入命令; :w 保存;
:w filename 另存为filename; :wq! 保存退出;
:wq! filename 注:以filename为文件名保存后退出; :q! 不保存退出;
:x 应该是保存并退出 ,功能和:wq!相同 3.4 光标移动;
当我们按ESC进入Command模式后,我们可以用下面的一些键位来移动光标; j 向下移动一行; k 向上移动一行; h 向左移动一个字符; l 向右移动一个字符; ctrl+b 向上移动一屏; ctrl+f 向下移动一屏; 向上箭头 向上移动; 向下箭头 向下移动; 向左箭头 向左移动; 向右箭头 向右移动;
我们编辑一个文件时,对于 j、k、l和h键,还能在这些动作命令的前面加上数字,比如 3j,表示向下移动3行。 3.5 插入模式(文本的插入); i 在光标之前插入; a 在光标之后插入; I 在光标所在行的行首插入; A 在光标所在行的行末插入; o 在光标所在的行的上面插入一行; O 在光标所在的行的下面插入一行;
s 删除光标后的一个字符,然后进入插入模式; S 删除光标所在的行,然后进入插入模式; 3.6 文本内容的删除操作; x 一个字符;
#x 删除几个字符,#表示数字,比如3x; dw 删除一个单词;
#dw 删除几个单词,#用数字表示,比如3dw表示删除三个单词; dd 删除一行;
#dd 删除多个行,#代表数字,比如3dd 表示删除光标行及光标的下两行; d$ 删除光标到行尾的内容;
J 清除光标所处的行与上一行之间的空格,把光标行和上一行接在一起; 3.7 恢复修改及恢复删除操作; u 撤消修改或删除操作;
按ESC键返回Command(命令)模式,然后按u键来撤消删除以前的删除或修改;如果您想撤消多个以前的修改或删除操作,请按多按几次u。这和Word的撤消操作没有太大的区别;
3.8 复制和粘帖的操作;
其实删除也带有剪切的意思,当我们删除文字时,可以把光标移动到某处,然后按shift+p键就把内容贴在原处,然后再移动光标到某处,然后再按p或shift+p又能贴上; p 在光标之后粘帖; shift+p 在光标之前粘帖 来举一例:
比如我们想把一个文档的第三行复制下来,然后帖到第五行的后面,我们应该怎么做呢? 有两种方法; 第一种方法:
先把第三行删除,把光标移动到第三行处,然后用dd动作,接着再按一下shift+p键。这样就把刚才删除的第三行帖在原处了。
接着我们再用k键移动光标到第五行,然后再按一下p键,这样就把第三行的内容又帖到第五行的后面了; 第二种方法;
进入可视模式,按ESC键,然后按v键。移动鼠标指针,选中第三行的内容,然后按y键复制;再移动指针到第五行,最后按p键;
所以复制和粘贴操作,是命令模式、插入模式及末行模式的综合运用;我们要学会各种模式之间的切换,要常用ESC键;更为重要的学会在命令模式下移动光标;
3.9 关于行号;
有时我们配置一个程序运行时,会出现配置文件X行出现错误 。这时我们要用到行号相关的操作; 为所有内容添加行号; 按ESC键,然后输入: :set number 光标所处位置
在屏幕的右下角,有类似如下的; 57,8 27%
在这之中,57表示第57行,8表示第8个字符; 3.10 查找和替换功能; 3.10.1 查找;
首先,我们要进入ESC键,进入命令模式;我们输入/或?就进入查找模式了; /SEARCH 注:正向查找,按n键把光标移动到下一个符合条件的地方; ?SEARCH 注:反向查找,按shift+n 键,把光标移动到下一个符合条件的 举一例:比如我想在一个文件中找到swap单词,我应该如下做; 首先按ESC键,进入命令模式,然后输入; /swap 或 ?swap
3.10.2 替换;
按ESC键进入命令模式;
:s /SEARCH/REPLACE/g 注:把当前光标所处的行中的SEARCH单词,替换成REPLACE,并把所有SEARCH高亮显示;
:%s /SEARCH/REPLACE 注:把文档中所有SEARCH替换成REPLACE; :#,# s /SEARCH/REPLACE/g 注:#号表示数字,表示从多少行到多少行,把SEARCH替换成REPLACE;
注:在这之中,g表示全局查找;我们注意到,就是没有替换的地方,也会把SEARCH高亮显示; 举例说明:
比如我们有一篇文档要修改;
我们把光标所在的行,把所有单词the,替换成THE,应该是: :s /the/THE/g
我们把整篇文档的所有的the都替换成THE,应该是: :%s /the/THE
我们仅仅是把第1行到第10行中的the,替换成THE,应该是; :1,10 s /the/THE/g 四、gcc编译器的使用 1、gcc简介
GCC是GNU公社的一个项目。是一个用于编程开发的自由编译器。最初,GCC只是一个C语言编译器,他是GNU C Compiler 的英文缩写。随着众多自由开发者的加入和GCC自身的发展,如今的GCC已经是一个包含众多语言的编译器了。其中包括 C,C++,Ada,Object C和Java等。所以,GCC也由原来的GNU C Compiler变为GNU Compiler Collection。也就是 GNU编
译器家族的意思。当然,如今的GCC借助于他的特性,具有了交叉编译器的功能,即在一个平台下编译另一个平台的代码。
Gcc编译器能将C、C++语言源程序、汇程式化序和目标程序编译、连接成可执行文件,如果没有给出可执行文件的名字,gcc将生成一个名为a.out的文件。在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。 2、GCC的基本用法和选项
在使用Gcc编译器的时候,我们必须给出一系列必要的调用参数和文件名称。Gcc编译器的调用参数大约有100多个,其中多数参数我们可能根本就用不到,这里只介绍其中最基本、最常用的参数。 Gcc最基本的用法是∶gcc [options] [filenames]
其中options就是编译器所需要的参数,filenames给出相关的文件名称。
-c,只编译,不连接成为可执行文件,编译器只是由输入的.c等源代码文件生成.o为后缀的目标文件,通常用于编译不包含主程序的子程序文件。
-o output_filename,确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件a.out。
-g,产生符号调试工具(GNU的gdb)所必要的符号资讯,要想对源代码进行调试,我们就必须加入这个选项。
-O,对程序进行优化编译、连接,采用这个选项,整个源代码会在编译、连接过程中进行优化处理,这样产生的可执行文件的执行效率可以提高,但是,编译、连接的速度就相应地要慢一些。
-O2,比-O更好的优化编译、连接,当然整个编译、连接过程会更慢。
正在阅读:
实验二vi文本编辑器的使用04-10
毕业生如何写好自我鉴定05-18
2019银行招聘考试片段阅读精髓知识点12-14
B(36)——生产运作管理试卷06-04
(目录)全球及中国脂肪胺行业市场深度调研及投资咨询报告(2017-07-05
外汇交易(开卷考试资料)10-17
乡镇公务员面试真题10-15
思想道德与法律基础试卷B及答案09-24
在区政协委员活动日上的讲话范文09-07
优秀影视作品不应该拍续集 一辩稿06-05
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 编辑器
- 文本
- 实验
- 使用
- 先张法施工工艺
- 中国人发假发行业市场调查研究报告(目录) - 图文
- 浅析《芙蓉镇》中秦书田的人物形象
- 中国葡萄酒主销区调查报告(华东篇)2004版
- 三年高考(2016-2018)生物试题分项版解析 - 专题12 内环境与稳态
- 初中数学竞赛辅导讲义及习题解答 含答案 共30讲 改好278页
- 城市综合管廊监控与报警系统解决方案(Word版) - 图文
- 用LCD1602和ADC0832设计的两路电压表
- 千古一帝秦始皇教学设计
- 旅游营销策划书范文
- 化工原理(下)复习各章知识点及复习题
- 借助BLM模型做好高效人才供应链的人才规划
- 关于印发《上海市高级人民法院关于执行程序中变更、追加被执行主
- 2014年中级经济师考试财政税收精讲:俱乐部理论
- 爆破预案
- 议论文写作辅导讲座 - 对比论证
- jsp新闻发布系统课程设计
- 连云港市远程教育《创新能力培养与提高》答案
- ASK,FSK,PSK频谱特性分析
- 最精彩的大学生英语演讲范文20篇