Linux_Vi编辑器的使用实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北京林业大学
2012学年—2013学年第二学期 Linux应用实验任务书
专业名称:信息管理与信息统班级:
姓名:学号:
实验题目:实验三 Vi编辑器的基本使用
实验环境: Red Hat Linux 9 实验目的:
1.通过Vi 操作练习,能够熟练使用Vi 中的常见操作,并且熟悉Vi 的3
种模式。
2.熟悉shell的各项功能。
实验步骤:
1.熟悉Shell环境,使用Shell的各种功能
1)命令补齐功能
用date命令查看系统当前时间,在输入da后,按tab键,让shell 自动补齐命令的后半部分。
按tab键自动补齐:
●用mkdir命令创建新的目录。首先输入第一个字母m,然后按tab
键,由于以m开头的命令太多,shell会提示是否显示全部的可能命令,输入n。
●再多输入一个字母k,按tab键,让shell列出以mk开头的所有命
令的列表。
●在列表中查找mkdir命令,看看还需要多输入几个字母才能确定
mkdir这个命令,然后输入需要的字母,再按tab键,让shell补齐
剩下的命令。
●最后输入要创建的目录名,按回车键执行命令。
●多试几个命令利用tab键补齐。
到a可以补齐
到p可以补齐
2)命令别名功能
●输入alias命令,显示目前已经设置好的命令的别名。
●设置别名ls为ls –l,以长格形式显示文件列表:●显示别名ls代表的命令,确认设置生效:
●使用别名ls显示当前目录中的文件列表。
●删除别名ls:#unalias ls。
●显示别名ls,确认删除别名已经生效:
●最后再用命令ls 显示当前目录中的文件列表。
3)输入、输出重定向和管道
(1) 输入/输出重定向
●用ls命令显示当前目录中的文件列表:
●使用输出重定向,把ls命令在终端上显示的当前目录中的文件列表
重定向到文件list中:
●查看文件list中的内容:
●再次使用输出重定向,把ls命令在终端上显示的当前目录中的文件
列表重定向到文件list中。这次使用管道符号>>进行重定向:
●查看文件list的内容,可以看到用>>进行重定向是把新的输出内容
附加在文件的末尾:
●重复命令#ls –l > list。
●再次查看文件list中的内容,和前两次的结果相比较,完成课后第
一题。
(2)管道
●利用管道和grep命令,在上面建立的文件list中查找字符串list:
●利用管道和wc命令,计算文件list中的行数、单词数和字符数:
行数:
单词数:
字符数:
2.Vi编辑器
运行编辑器vi。
1)在“/root”目录下建一个名为“/Vi”的目录2)进入“/Vi”目录。
3)在vi中编写一个abc.c程序(见下页)
4)设定行号。
5)将光标移到第6行。
6)复制该行内容。:
7)将光标移到倒数第二行行首。
8)粘贴复制行的内容。
:9)撤销第8步的动作。
10)删除该行。
删除了第六行
11)存盘但不退出。
12)将光标移到首行。
13)插入模式下输入“Hello,this is Vi world!”。
14)返回命令行模式。
15)向下查找字符串“int”
16)再向上查找字符串“stdio”。
17)强制退出 Vi,不存盘。
/* 一个解决“鸡兔同笼”问题的源程序abc.c */
#include
main( )
{
int h,f;
int x,y;
printf("请输入头数和脚数:");
scanf("%d,%d",&h,&f);
x=(4*h-f)/2;
y=(f-2*h)/2;
printf("鸡=%d 兔子=%d",x,y);
}
实验中的问题及解决办法:
1.用alias命令设置别名的时候,一开始直接就打了命令的名称,
出现了不是命令的错误,应该在原命令的外面加上‘’说明那
是一个命令。
2.在执行复制代码行的命令时,经常弄不清是在哪个模式下输入,
命令模式和插入模式经常搞混。需要经常切换。
3.在本次试验中,主要了解了一些有关于文件和代码的操作。以前
对于虚拟机上的代码编写只能是逐个操作,现在知道了可以逐行
操作,更加方便快捷。
思考题:
1.输出重定向>和>>的区别是什么?
答:>是将内容重定向输出到某个文件中,若有新的内容重定向
输出到同一个文件,则新的内容会替代原来的内容。
》也是将内容重定向到某个文件中,但若有新的内容重定向输出到同一个文件,则新的内容会接在原来内容的尾部。
区别就是》不替代原有内容,只是接着往下输出,而>会替代原来的内容。