当前位置:文档之家› FreeBSD11系列8:FreeBSD文件编辑vi指令大全

FreeBSD11系列8:FreeBSD文件编辑vi指令大全

FreeBSD11系列8:FreeBSD文件编辑vi指令大全
FreeBSD11系列8:FreeBSD文件编辑vi指令大全

FreeBSD文件编辑vi指令大全

vi的几种命令模式

Command(命令)模式,用于输入命令;

Insert(插入)模式,用于插入文本;

Visual(可视)模式,用于视化的的高亮并选定正文;

Command模式是vi或vim的默认模式,如果我们处于其它命令模式时,要通过ESC键切换过来。

当我们按ESC键后,接着再输入:号时,vi会在屏幕的最下方等待我们输入命令;

进入vi的命令

vi filename打开或新建文件,并将光标置于第一行首

vi+n filename打开文件,并将光标置于第n行首

vi+filename打开文件,并将光标置于最后一行首

vi+/pattern filename打开文件,并将光标置于第一个与pattern匹配的串处

vi-r filename在上次正用vi编辑时发生系统崩溃,恢复filename

vi filename....filename打开多个文件,依次进行编辑

光标移动命令

h光标左移一个字符

l光标右移一个字符

space光标右移一个字符

Backspace光标左移一个字符

k或Ctrl+p光标上移一行

j或Ctrl+n光标下移一行

Enter光标下移一行

w或W光标右移一个字至字首

b或B光标左移一个字至字首

e或E光标右移一个字至字尾

)光标移至句尾

(光标移至句首

}光标移至段落开头

{光标移至段落结尾

nG光标移至第n行首

n+光标下移n行

n-光标上移n行

n$光标移至第n行尾

H光标移至屏幕顶行

M光标移至屏幕中间行

L光标移至屏幕最后行

0光标移至当前行首

$光标移至当前行尾

屏幕翻滚命令

Ctrl+u向文件首翻半屏

Ctrl+d向文件尾翻半屏

Ctrl+f向文件尾翻一屏

Ctrl+b向文件首翻一屏

nz将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

插入命令

i在光标前

I在当前行首

a光标后

A在当前行尾

o在当前行之下新开一行

O在当前行之上新开一行

r替换当前字符

R替换当前字符及其后的字符,直至按ESC键

s从当前光标位置处开始,以输入的文本替代指定数目的字符

S删除指定数目的行,并以所输入文本代替之

ncw或nCW修改指定数目的字

nCC修改指定数目的行

删除命令

x一个字符;

#x删除几个字符,#表示数字,比如3x;

dw删除一个单词;

#dw删除几个单词,#用数字表示,比如3dw表示删除三个单词;

dd删除一行;

#dd删除多个行,#代表数字,比如3dd表示删除光标行及光标的下两行;ndw或ndW删除光标处开始及其后的n-1个字

do删至行首

d$删至行尾

ndd删除当前行及其后n-1行

x或X删除一个字符,x删除光标后的,而X删除光标前的

Ctrl+u删除输入方式下所输入的文本

恢复修改及恢复删除操作;

u撤消修改或删除操作;

查找替换

/SEARCH注:正向查找,按n键把光标移动到下一个符合条件的地方;

?SEARCH注:反向查找,按shift+n键,把光标移动到下一个符合条件的

/pattern从光标开始处向文件尾搜索pattern

?pattern从光标开始处向文件首搜索pattern

n在同一方向重复上一次搜索命令

N在反方向上重复上一次搜索命令

:s/SEARCH/REPLACE/g注:把当前光标所处的行中的SEARCH单词,替换成REPLACE,并把所有SEARCH高亮显示;

:%s/SEARCH/REPLACE注:把文档中所有SEARCH替换成REPLACE;

:#,#s/SEARCH/REPLACE/g注:#号表示数字,表示从多少行到多少行,把SEARCH替换成REPLACE;

:s/p1/p2/g将当前行中所有p1均用p2替代

:n1,n2s/p1/p2/g将第n1至n2行中所有p1均用p2替代

:g/p1/s//p2/g将文件中所有p1均用p2替换

选项设置

all列出所有选项设置情况

term设置终端类型

ignorance在搜索中忽略大小写

list显示制表位(Ctrl+I)和行尾标志($)

number显示行号

report显示由面向行的命令修改过的数目

terse显示简短的警告信息

warn在转到别的文件时若没保存当前文件则显示NO write信息

nomagic允许在搜索模式中,使用前面不带“\”的特殊字符

nowrapscan禁止vi在搜索到达文件两端时,又从另一端开始

mesg允许vi显示其他用户用write写到自己终端上的信息

寄存器操作

"?nyy将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字"?nyw将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字"?nyl将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字"?p取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字

ndd将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中

最后行方式命令(保存退出)

:n1,n2co n3将n1行到n2行之间的内容拷贝到第n3行下

:n1,n2m n3:将n1行到n2行之间的内容移至到第n3行下

:n1,n2d将n1行到n2行之间的内容删除

:w保存当前文件

:w filename另存为filename;

:wq!保存退出;

:wq!filename注:以filename为文件名保存后退出;

:e filename打开文件filename进行编辑;

:x保存当前文件并退出(与:wq!保存退出相同)

:q退出vi

:q!不保存文件并退出

:!command执行shell命令command

:n1,n2w!command将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入

:r!command将命令command的输出结果放到当前行

vi命令列表

一般模式:移动光标 h 或向左方向键光标向左移动一个字符 j 或向下方向键光标向下移动一个字符 k 或向上方向键光标向上移动一个字符 l 或向右方向键光标向右移动一个字符 [Ctrl] + [f] 屏幕『向前』移动一页(常用) [Ctrl] + [b] 屏幕『向后』移动一页(常用) [Ctrl] + [d] 屏幕『向前』移动半页 [Ctrl] + [u] 屏幕『向后』移动半页 + 光标移动到非空格符的下一列 - 光标移动到非空格符的上一列 n 按下数字后再按空格键,光标会向右移动这一行的 n 个字符。例如 20 则光标会向后面移动 20 个字符距离。 0 这是数字『 0 』:移动到这一行的最前面字符处(常用) $ 移动到这一行的最后面字符处(常用)H 光标移动到这个屏幕的最上方那一行M 光标移动到这个屏幕的中央那一行 L 光标移动到这个屏幕的最下方那一行G 移动到这个档案的最后一行(常用) nG 移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的 20 行(可配合 :set nu) n 光标向下移动 n 行(常用)

一般模式:搜寻与取代 /word 向光标之后寻找一个字符串名称为 word 的字符串。(常用) word 向光标之前寻找一个字符串名称为 word 的字符串。 :n1,n2s/word1/word2/g 在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 !(常用) :1,$s/word1/word2/g 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !(常用) :1,$s/word1/word2/gc 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给使用者确认(confirm)是否需要取代!(常用)

vi编辑器命令详解

vi编辑器命令详解 vi命令是unix下常用而重要命令,可在全屏幕方式下编辑一个或多个文件。若在vi执行时 没有指定一个文件,那么vi命令会自动产生一个无名的空的工作文件。若指定的文件不存在, 那么就按指定的文件名创建一个新的文件。若对文件的修改不保存的话,v i命令并不改变原 来文件的内容。 注意:vi命令并不锁住所编辑的文件,因此多个用户可能在同时编辑一个文件,那么最后 保存的文件版本将被保留。 下面是vi命令使用的一些选项及含义: -c sub-command 在对指定的文件编辑前,先执行指定的命令sub-command . -r filename 恢复指定的文件filename . -R 将指定的文件以只读的方式放入编辑器中,这样不会保存对文件的任何修改。 -y number 将编辑窗口的大小设为number行。 下面是vi编辑所处的三种模式: .命令模式进入vi时所处的模式。在此模式下用户可输入各种子命令对进行*作,如删除行、 粘贴行、移向下一个字、移向不同行等。 .文本输入模式在此模式下可以修改一行的内容并增添新行。在命令模式下键入a 、i 或 c键可进入文本输入模式,按Escape键可返回命令模式。 .命令项模式在此模式下,可以通过子命令输入更多的参数。如:w子命令要求输入一文 件名,"/"子命令要求输入一个查找项。用户使用Escape键返回命令模式。 下面是自命令模式下执行的,在同一行上移动的自命令: h 将光标左移一格。 l 将光标右移一格。 j 将光标下移一格。 k 将光标上移一格。 w 将光标移到下一个小字的前面。 W 将光标移到下一个大字的前面。 b 将光标移到前一个小字的前面。 B 将光标移到前一个大字的前面。 e 将光标移到下一个小字的后面。 E 将光标移到前一个大字的后面。 fc 把光标移到同一行的下一个c字符处。 Fc 把光标移到同一行的前一个c字符处。 tc 把光标移到同一行的下一个字符c的前一格。

vi命令的使用

vi编辑器使用方法 1、vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode) 1) 命令行模式command mode) 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode 下,或者到 last line mode。 2) 插入模式(Insert mode) 只有在Insert mode下,才可以做文字输入,按[ESC]键可回到命令行模式。 3) 底行模式(last line mode) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。 一般把vi简化成两个模式,即将底行模式(last line mode)也算入命令行模式command mode)。 2、vi的基本操作 2.1、三种模式的转换 a) 进入vi 在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面: $ vi myfile 进入vi之后,是处于[命令行模式(command mode)],要切换到[插入模式(Insert mode)]才能够输入文字。 b) 切换至插入模式(Insert mode)编辑文件 在[命令行模式(command mode)]下键入对应字母就可以进入[插入模式(Insert mode)],此时可以开始输入文字了。 c) Insert 的切换 处于[插入模式(Insert mode)],就只能一直输入文字。若发现输错了字!要按[ESC]键转到[命令行模式(command mode)]再删除文字。 d) 退出vi及保存文件 在[命令行模式(command mode)]下,按一下[:]冒号键进入[Last line mode],例如: : w filename (输入 [w filename]将文章以指定的文件名filename保存): wq (输入[wq],存盘并退出vi) : q! (输入q!,不存盘强制退出vi) 2.2、命令行模式(command mode)功能键 1). 插入模式 按切换进入插入模式,按“i”进入插入模式后是从光标当前位置开始输入文件;

vi 操作指令

vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个和pattern匹配的串处vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename vi filename....filename :打开多个文件,依次进行编辑 移动光标类命令 h :光标左移一个字符 l :光标右移一个字符 space:光标右移一个字符 Backspace:光标左移一个字符 k或Ctrl+p:光标上移一行 j或Ctrl+n :光标下移一行 Enter :光标下移一行 w或W :光标右移一个字至字首 b或B :光标左移一个字至字首 e或E :光标右移一个字至字尾 ) :光标移至句尾 ( :光标移至句首 }:光标移至段落开头 {:光标移至段落结尾 nG:光标移至第n行首 n+:光标下移n行 n-:光标上移n行 n$:光标移至第n行尾 H :光标移至屏幕顶行 M :光标移至屏幕中间行 L :光标移至屏幕最后行 0:(注意是数字零)光标移至当前行首 $:光标移至当前行尾 屏幕翻滚类命令 Ctrl+u:向文件首翻半屏 Ctrl+d:向文件尾翻半屏 Ctrl+f:向文件尾翻一屏 Ctrl+b;向文件首翻一屏 nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。 插入文本类命令 i :在光标前 I :在当前行首 a:光标后 A:在当前行尾 o:在当前行之下新开一行 O:在当前行之上新开一行 r:替换当前字符

FreeBSD笔记┊ 使用ports来管理软件包

FreeBSD笔记┊使用ports来管理软件包 Linux/unix上的软件包真是五花八门,不太统一。按软件包有redhat下的rpm,ubu ntu的dpkg管理ded包,还有源码编译,pl,py格式的;网络安装有redhat下的yum,ubuntu下的apt-get,suse听说又是另外一套(这个我没用过),现在freebsd下管理网络软件包主要是ports。 今天主要就来学习一下ports的管理。 1、ports套件的安装和简单介绍 [1]. 安装 ports安装在"FreeBSD笔记┊FreeBSD7.0安装篇之一:系统安装"第6步讲到了,如果你当时没有选择启用ports的话,那么需要在root下输入"sysinstall"来安装它: 输入sysinstall --> 选择Configure --> Distributions --> ports,然后安装即可。 [2]. ports路径 ports的默认路径是/usr/ports,这个ports的根目录,下面有很多的文件夹及子文件夹,组成一个树状目录,包含大量ports下的软件 这些即是套件的软件分类和名称,比如mail代表邮件服务软件;games则是一些游戏;www里面是一些web服务软件;databases则是数据库软件…… [root@bsd01 /usr/ports]# cd www [root@bsd01 /usr/ports/www]# ls -d apache* apache-contrib apache13 apache13-modssl+ipv6 apache-forrest apache13+ipv6 apache13-ssl apache-jserv apache13-modperl apache20 apache-mode.el apache13-modssl apache22 如果你你需要安装什么软件,只要进入当前目录,然后“make install clean”即可。 [root@bsd01 ~]# cd /usr/ports/www/apache22 [root@bsd01 /usr/ports/www/apache22] make install clean 而/usr/ports/distfiles是存放软件包的文件夹,ports就会先检查/usr/ports/distfiles 目录内有没有这个软件包,如果没有它就会自动从网上下载安装。 [3]. 源地址 ports从网上下载软件包自动安装,那么从那里下载呢?这就需要一个源地址管理,跟u buntu上的/etc/source.list文件一样,freebsd用的文件是/etc/make.conf,我们来编辑这个文件,加入下列几行,国内比较块的源: [root@bsd01 ~]# ee /etc/make.conf MASTER_SITE_OVERRIDE?= \

操作系统实验报告 LINUX基本命令使用和VI编辑器

实验报告模板 实验名称Linux基本命令使用和vi编辑器学院 姓名学号班级 实验地点实验日期评分 指导老师同组其他成员 一、实验目的 掌握Linux一般命令格式。 2.掌握有关文件和目录操作的常用命令。 3.掌握进程操作的常用命令。 4.熟练使用man命令。 5.学习使用vi编辑器建立、编辑、显示及加工处理文本文件。 二、实验环境 VMware,RedHat Linux 三、实验内容 正确地登录和退出系统(logout或exit)。 2.熟悉date,cal,who,clear命令。 3.在用户主目录下对文件进行操作:复制一个文件、显示文件内容、查找指定内容、排序、文件比较、文件删除等。 4.对目录进行管理:创建和删除子目录、改变和显示工作目录、列出和更改文件权限、链接文件等。 5.利用man显示date等命令的手册页。 6.显示系统中的进程信息。 7.进入和退出vi。 8.利用文本插入方式建立一个文件。 9.在新建的文本文件上移动光标位置。 10.对该文件执行删除、复原、修改、替换等操作。 四、实验结果(含程序、数据记录及分析和实验总结等) 1.使用简单命令:date,cal,who,echo,clear等,了解Linux命令格式。

Clear之后 2.浏览文件系统: (1)运行pwd命令,确定当前工作目录。 (2)运行ls–l命令,理解各字段含义。 第一部分“-rw-r--r--”表示该文件的权限,即所有者权限为读和写,组用户和其他用户的权限为只读。第二部分“l”表示该文件是符号链接,第三第四部分所 有者和所有者所在的用户组,第五部分的数字表示文件的大小(以字节为单位),剩下的依次是文件创建月日时间和文件名。

FreeBSD下dummynet控制网络

Dummynet安装配置 DummyNet是FreeBSD的内部系统工具,需要在安装FreeBSD系统后重新安装编译内核。该工具是内核级别的IP包处理工具。该工具可以模拟包的丢失、包的延时……(仓促间仅试验了drop & delay,但相信功能远多于此)。该工具是配合FreeBSD自带的防火墙ipfw 使用的。 第一部分:简单的介绍安装 1、FreeBSD系统的安装: (1,2,3,……,系统的安装过程省略) 2、dummynet安装: 我在FreeBSD8.1下面的安装最简单的方法是通过以root 身份运行sysinstall,选择Configure,然后是Distributions、src,选中其中的base 和sys 3、接下来配置内核(因为要编译内核,过程比较慢very very ) 内核文件默认路径/usr/src/sys/i386/conf E、reboot重启系统,让新内核生效 第二部分:简单举例(本处需要使用ipfw规则,偶也不熟,找手册吧)

本例通过ping网关看到网络基本正常,丢包率0.0%,平均延迟3.257ms (进、出来回,单向就是1.6ms) 2、设置延迟和丢包 设置所有上行icmp协议的ip包延迟100ms丢包率40% 通过ping网关看丢包率在46.5%,平均延迟106.581ms(单向out,如果双向则在210ms 所有) 3、设置延迟 让所有通过网卡的ip包都延迟500ms(包含进、出)

通过ping网关看,丢包率在0.5%,平均延时1002.87ms(进、出双向,单向则为500ms左右) 第三部分:结论 通过以上实验看,在有线网络环境下dummynet基本上可以模拟丢包、延时等,需要结合ipfw使用,但是是否能够作为第三方去控制别的IP地址间的带宽或者控制无线网络,结果 未知。

vi下的一些常用命令

vi 是visual edit 的缩写 文本编辑器是所有计算机系统中最常用的一种工具。UNIX下的编辑器有ex,sed和vi等,其中,使用最为广泛的是vi,而vi命令繁多,论坛里好像这方面的总结不多,以下稍做总结,以资共享!渴望更正和补充! 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename vi filename....filename :打开多个文件,依次进行编辑 移动光标类命令 h :光标左移一个字符 l :光标右移一个字符 space:光标右移一个字符 Backspace:光标左移一个字符 k或Ctrl+p:光标上移一行 j或Ctrl+n :光标下移一行 Enter :光标下移一行 w或W :光标右移一个字至字首 b或B :光标左移一个字至字首 e或E :光标右移一个字至字尾 ) :光标移至句尾 ( :光标移至句首 }:光标移至段落开头 {:光标移至段落结尾 nG:光标移至第n行首 n+:光标下移n行 n-:光标上移n行 n$:光标移至第n行尾

H :光标移至屏幕顶行 M :光标移至屏幕中间行 L :光标移至屏幕最后行 0:(注意是数字零)光标移至当前行首 $:光标移至当前行尾 屏幕翻滚类命令 Ctrl+u:向文件首翻半屏 Ctrl+d:向文件尾翻半屏 Ctrl+f:向文件尾翻一屏 Ctrl+b;向文件首翻一屏 nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。插入文本类命令 i :在光标前 I :在当前行首 a:光标后 A:在当前行尾 o:在当前行之下新开一行 O:在当前行之上新开一行 r:替换当前字符 R:替换当前字符及其后的字符,直至按ESC键 s:从当前光标位置处开始,以输入的文本替代指定数目的字符S:删除指定数目的行,并以所输入文本代替之 ncw或nCW:修改指定数目的字 nCC:修改指定数目的行 删除命令 ndw或ndW:删除光标处开始及其后的n-1个字 do:删至行首 d$:删至行尾 ndd:删除当前行及其后n-1行 x或X:删除一个字符,x删除光标后的,而X删除光标前的 Ctrl+u:删除输入方式下所输入的文本 搜索及替换命令 /pattern:从光标开始处向文件尾搜索pattern ?pattern:从光标开始处向文件首搜索pattern n:在同一方向重复上一次搜索命令

个人心得-vi编辑器的快捷使用

个人心得-vi编辑器的快捷使用

光标控制命令 命令光标移动 h或^h 向左移一个字符j或^j或^n 向下移一行 k或^p 向上移一行 l或空格向右移一个字符 G 移到文件的最后一行 nG 移到文件的第n 行 w移到下一个字的开头 W 移到下一个字的开头,忽略标点符号 b 移到前一个字的开头 B 移到前一个字的开头,忽略标点符号 L 移到屏幕的最后一行 M 移到屏幕的中间

一行 H 移到屏幕的第一行 e 移到下一个字的结尾 E 移到下一个字的结尾,忽略标点符号 (移到句子的开头)移到句子的结尾{移到段落的开头}移到下一个段落的开头 0或| 移到当前行的第一列 n| 移到当前行的第n列 ^ 移到当前行的第一个非空字符 $ 移到当前行的最后一个字符 +或return移到下一行的第一个字符

- 移到前一行的第一个非空字符 在vi中添加文本 命令插入动作 a 在光标后插入文本 A 在当前行插入文本 i 在光标前插入文本 I 在当前行前插入文本 o 在当前行的下边插入新行 O 在当前行的上边插入新行 :r file读入文件file 内容,并插在当前行后 :nr file读入文件file 内容,并插在第n行后 escape 回到命令模式

^v char 插入时忽略char的指定意义,这是为了插入特殊字符 在vi中删除文本 命令删除操作 x 删除光标处的字符,可以在x前加上需要删除的字符数目 nx 从当前光标处往后删除n个字符 X 删除光标前的字符,可以在X前加上需要删除的字符数目 nX 从当前光标处往前删除n个字符 dw 删至下一个字的开头 ndw 从当前光标处往后删除n个字 dG 删除行,直到文件结束 dd删除整行 ndd 从当前行开始往后删除 db 删除光标前面的

vi命令手册

一、Unix编辑器概述 编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件。Unix及其相似的ix 操作系统系列中,为方便各种用户在各个不同的环境中使用,提供了一系列的ex编辑器,包括ex,edit,ed和 vi.其中ex,edit,ed都是行编辑器,现在已很少有人使用,Unix提供他们的原因是考虑到满足各种用户特别 是某些终端用户的需要。 值得庆幸的是,Unix提供了全屏幕的Vi编辑器,这使我们的工作轻松不少。不少DOS用户抱怨Vi编辑器不象 DOS下的编辑器如edit那么好用,这是因为Vi考虑到各种用户的需要,没有使用某些通用的编辑键(在各个 不同的终端机上他们的定义是不同的,在某些终端机上甚至没有这些键)。而是采用状态切换的方法,但这 只是习惯的问题,一旦你熟练的使用上了vi你就会觉得它其实也很好用。 虽然Vi采用了状态切换的方法,但电脑的硬件及操作系统多种多样,某些电脑的键盘上没有特定的几个功 能键!那麽不就有某些功能不能用了?这个问题在Unix系统上也一样,几乎各大电脑厂商都有自己的 Unix系统,而vi的操作方法也会随之有点出入。这里我们采用PC的键盘来说明vi的操作,但在具体 的环境中还要参考相应的资料,这一点是值得注意的。 二、Vi入门 (一)、进入vi 在系统提示字符(如¥、#)下敲入vi<档案名称>,vi可以自动帮你载入所要编辑的文件或是开启一个新 文件(如果该文件不存在或缺少文件名)。进入vi后萤幕左方会出现波浪符号,凡是列首有该符号就代

表此列目前是空的。 (二)、两种模式 如上所述,vi存在两种模式:指令模式和输入模式。在指令模式下输入的按键将做为指令来处理:如输入 a,vi即认为是在当前位置插入字符。而在输入模式下,vi则把输入的按键当作插入的字符来处理。指令 模式切换到输入模式只需键入相应的输入命令即可(如a,A),而要从输入模式切换到指令模式,则需在 输入模式下键入ESC键,如果不晓得现在是处於什麽模式,可以多按几次[ESC],系统如发出哔哔声就表 示已处于指令模式下了。 付:有指令模式进入输入模式的指令: 新增(append) a:从光标所在位置後面开始新增资料,光标後的资料随新增资料向後移动。 A:从光标所在列最後面的地方开始新增资料。 插入(insert) i:从光标所在位置前面开始插入资料,光标後的资料随新增资料向後移动。 I:从光标所在列的第一个非空白字元前面开始插入资料。 开始(open) o:在光标所在列下新增一列并进入输入模式。 O:在光标所在列上方新增一列并进入输入模式。 (三)、退出vi 在指令模式下键入:q,:q!,:wq或:x(注意:号),就会退出vi。其中:wq和:x是存盘退出,而:q是直接退出,

vi编辑器使用

v i编辑器使用 Prepared on 22 November 2020

经过长时间学习linux vi编辑器,于是和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西。 linux vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,linux vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。 1、vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下: 1) 命令行模式command mode) 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。 2) 插入模式(Insert mode) 只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。 3) 底行模式(last line mode) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。 不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。 2、vi的基本操作 a) 进入vi 在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面: $ vi myfile 不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧! b) 切换至插入模式(Insert mode)编辑文件 在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。 c) Insert 的切换 您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。

vi操作命令大全完整版

v i操作命令大全 HUA system office room 【HUA16H-TTMS2A-HUAS8Q8-HUAH1688】

一vi的操作模式 vi提供两种操作模式:输入模式(insert mode)和指令模式(command mode)。在输入模式下,用户可输入文本资料。在指令模式下,可进行删除、修改等各种编辑动作。 在输入模式下,按Esc键切换到指令模式下。 在指令模式下,按输入指令(i、a、o等)进入输入模式。 二进入vi $ vi filename 直接键入“vi + 所要编辑的文件名”,即可对指定的文件进行编辑。 如果指定的文件为新文件,则提示:“New file”,否则显示该文件的当前内容。 $ view filename 以只读方式打开文件filename 三指令模式 3.1进入输入模式 a 在当前游标之后输入 A 在当前行之末输入 i 在当前游标之前输入

I 在当前行之首输入 o 在当前行之下新增一行,并在新增行输入 O 在当前行之上新增一行,并在新增行输入 输入结束后,按Esc键退出输入模式。 3.2游标移动 h 向左移动一个字元 l 向右移动一个字元 j 向下移动一个字元 k 向上移动一个字元 b 左移一个单词,至词首 w 右移一个单词,至词尾 0 移到当前行行首 $ 移到当前行行尾 + 移至下一行的行首 - 移至上一行的行首 H 移至视窗的第一行 M 移至视窗的中间一行 L 移至视窗的最后一行 G 移至该文件的最后一行 nG 移至该文档的第n行 n+ 下移n行 n- 上移n 行 3.3视窗移动 * + f 视窗下卷一页 * + b 视窗上卷一页 + d 视窗下卷半页 + u 视窗上卷半页 * + e 视窗下卷一行 * + y 视窗上卷一行 3.4删除操作 x 删除游标所在字元 X 删除游标前一字元 dw 从游标当前位置开始向后删除一个单词 db 从游标当前位置开始向前删除一个单词 d0 从行首删除至当前游标位置 d$ 从游标当前位置删除至行尾 dd 删除游标所在行 D 同d$

Linux Vi编辑器的使用实验报告

北京林业大学 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 显示当前目录中的文件列表。

FreeBSD下GDB调试

2.6 调试 2.6.1 调试器 FreeBSD 自带的调试器叫 gdb (GNU debugger)。要运行,输入 %gdb progname 然而大多数人喜欢在Emacs中运行这个命令。可以这样来起动这个命令: M-x gdb RET progname RET 调试器能让你在一个可控制的环境中运行一个程序。例如,你可以一次运行程序的一行代码,检查变量的值,改变这些值,或者让程序运行到某个定点然后停止等等。你甚至可以调试内核,当然这样会比我们将要讨论的问题要多一点点技巧。 gdb 有非常棒的在线帮助,还有同样棒的 info 页面。因此这一章我们会把注意力集中到一些基本的命令上。 最后,如果你不习惯这个命令的命令行界面,在 Ports 中还有一个它的图形前端 (devel/xxgdb)。 这一章准备只介绍 gdb 的使用方法,而不会牵涉到特殊的问题比如调试内核。 2.6.2 在调试器中运行一个程序 要最大限度的利用 gdb,需要使用 -g 这个选项来编译你的程序。如果你没有这样做,那么你只会看到你正在调试的函数名字,而不是它的源代码。如果gdb起动时提示: ... (no debugging symbols found) ... 你就知道你的程序在编译的时候没有使用 -g 选项。 当 gdb 给出提示符,输入 break main。这就是告诉调试器你对正在运行的程序中预先设置的代码没有兴趣,并且调试器应该停在你的代码的开头。然后输入 run来开始你的程序──这会从预先设置的代码开始然后在调试器调用 main() 的时候就停下来。(如果你曾迷惑 main() 是在哪里被调用的,现在应该明白了吧!)

实验三 Shell和Vi编辑器

实验三Shell和Vi编辑器 一. 实验目的: 1. 熟悉shell的各项功能; 2. 掌握Linux系统终端方式使用的编辑器vi; 3. 学习vi的启动、存盘、文本输入、现有文件的打开、光标移动、复制/剪贴、查找/替换等命令。 二. 实验内容: 1. 练习使用shell的各项功能; 2. 熟练掌握vi编辑器的使用。 三. 实验练习: 1. 熟悉Shell环境,使用Shell的各种功能 1) 命令补齐功能 用date命令查看系统当前时间,在输入da后,按tab键,让shell自动补齐命令的后半部分。 用mkdir命令创建新的目录。首先输入第一个字母m,然后按tab键,由于以m开头的命令太多, shell会提示是否显示全部的可能命令,输入n。 再多输入一个字母k,按tab键,让shell列出以mk开头的所有命令的列表。 在列表中查找mkdir命令,看看还需要多输入几个字母才能确定mkdir这个命令,然后输入需要的 字母,再按tab键,让shell补齐剩下的命令。 最后输入要创建的目录名,按回车键执行命令。 多试几个命令利用tab键补齐。 2) 命令别名功能 输入alias命令,显示目前已经设置好的命令的别名。 设置别名ls为ls –l,以长格形式显示文件列表:#alias ls=‘ls -l’。 显示别名ls代表的命令,确认设置生效:#alias ls。 使用别名ls显示当前目录中的文件列表。 在使定义的别名不失效的情况下,使用系统的ls命令显示当前目录中的命令列表:#\ls。 删除别名ls:#unalias ls。 显示别名ls,确认删除别名已经生效:#alias ls。 最后再用命令ls 显示当前目录中的文件列表。 写出定义别名cde为:cd /etc的命令()。 3) 输入、输出重定向和管道 (1) 输出重定向 用ls命令显示当前目录中的文件列表:#ls –l。 使用输出重定向,把ls命令在终端上显示的当前目录中的文件列表重定向到文件list中:#ls –l > list。 查看文件list中的内容,注意在列表中会多出一个文件list,其长度为0。这说明shell是首先创建了 一个空文件,然后再运行ls命令:#cat list。 再次使用输出重定向,把ls命令在终端上显示的当前目录中的文件列表重定向到文件list中。这次 使用管道符号>>进行重定向:#ls –l >> list。 查看文件list的内容,可以看到用>>进行重定向是把新的输出内容附加在文件的末尾,注意其中两行 list文件的信息中文件大小的区别:cat list。 重复命令#ls –l > list。 再次查看文件list中的内容,和前两次的结果相比较,注意list文件大小和创建时间的区别,完成 课后第一题。 (2) 输入重定向 使用输入重定向,把上面生成的文件list用mail命令发送给自己:#mail root < list。 查看新邮件,看看收到的新邮件中其内容是否为list文件中的内容。

freebsd系统常用功能安装配置说明

系统安装配置指南 一.操作系统安装过程 为了在原有的snort基础上扩展到IPS功能,于是乎想利用snort_inline来做,虽然还有类似的snortsam、guardian之类的snort插件,不过既然snort 后续版本自带了inline模式,那就还是先用inline吧~ 1.1. 安装操作系统 CentOS:CentOS-5.2-i386-bin-DVD.iso Server版本,安装好gcc等各类开发工具。 安装freebsd 7.2 1、系统打补丁 配置ip地址网关、DNS freebsd-update fetch install reboot portsnap fetch extract ntpdate https://www.doczj.com/doc/794602949.html,

二.SNORT安装配置过程 2.1. 安装pcre(7.2装好后已有) cd /usr/ports/devel/pcrc make install clean pcre-7.8.tar.gz 下载后,configure→make→make install默认安装即可 2.2. 安装iptables-devel cd /usr/ports/net/libpcap make install clean iptables-devel-1.3.5-4.el5.i386.rpm 下载后,configure→make→make install默认安装即可 2.3. 安装libdnet cd /usr/ports/net/libdnet make install clean libdnet-1.11.tar.gz 下载后,configure→make→make install默认安装即可 2.4. 安装libpcap cd /usr/ports/net/libpcap make install clean libpcap-1.0.0.tar.gz 下载后,configure→make→make install默认安装即可 2.5. 安装ip_queue 利用modprobe ip_queue载入ip_queue模块 2.6. 安装snort-inline snort_inline-2.6.1.5.tar.gz 下载后,configure→make→make install默认安装即可 2.7. 运行前准备 打开系统的ip forward功能: [root@localhost ~]# echo 1 > /proc/sys/net/ipv4/ip_forward

2-实验二 使用vi编辑器

实验二使用vi(Visual interface)编辑器 一、实验目的 学习使用vi编辑器建立、编辑、显示以及加工处理文本文件。 二、实验内容 1.进入和退出vi。 2.利用文本插入方式建立一个文件。 3.在新建的文本文件上移动光标。 4.对文本文件执行删除、复原、修改、替换操作。 三、实验步骤 1.进入和退出vi <1> 进入vi 在系统提示符($)下输入命令vi和想要编辑(建立)的文件名(如example),便可进入vi。 <2> 退出vi 在命令方式下可有几种方法退出vi编辑器: :wq 把编辑缓冲区的内容写到你编辑的文件中,退出编辑器,回到shell下。 :ZZ 仅当作过修改时才将缓冲区内容写到文件上。 :x 与:ZZ 相同。 :q! 强行退出vi。感叹号(!)告诉vi,无条件退出,丢弃缓冲区内容。这样,先前对该文件所做的修改或输入都被抛弃。 2.新建文件 <1> 在UNIX提示符$之后,输入命令:vi myfile,然后按〈Enter〉键。 <2> 输入插入命令i(屏幕上看不到字符i)。 <3> 然后,输入以下文本行: To the only woman tht I,

For mang year you have been my wife <4> 发现这两行有错,进行改正: 按〈Esc〉键,从插入方式回到命令方式。 按光标上移键,使光标移到第一行。 按光标左移键,使光标移到“tht”的第二个“t”处。 输入i(这是插入命令),然后输入a。该行变成如下形式: To the only woman that I, 按光标右移键,使光标移到“I”上。 我们想在“I”之后输入一个空格和单词“love”。为此,输入附加命令“a”。结果屏幕显示为: To the only woman that a I, 这是怎么回事儿?......原来是:我们先前使用了插入命令i,至今并未用〈Esc〉键返回命令方式。所以,输入的所有字符都作为输入文本予以显示。 <5> 按〈Esc〉键,返回命令方式。 利用x命令删除错误字符。然后,进入插入方式,输入正确字符。 <6> 最后输入如下所示的文本: To the only woman that I love, For many year you have been mywwife I live you wich my life abd could not have picked much better. <7> 将你编辑的文本文件存盘。(利用:wq 命令,或者:x 命令) <8> 重新进入vi编辑程序,编辑上面的文件。(如:$ vi myfile) <9> 将光标移到第二行的year的r处。输入a命令,添加字符s。 <10> 利用取代命令r将mywwife改为my wife。 <11> 将光标移至第三行。 输入新行命令O(大写字母),屏幕上有什么变化? ---光标移至上一行(新加空行)的开头。 <12> 输入新行的内容: We've been through much together <13> 按〈Esc〉,回到命令方式。将光标移到第四行的live的i字母处。利用替换命

西工大操作系统实验报告如何操作使用FreeBSD

一、实验目的 了解FreeBSD,学习如何操作使用FreeBSD。 二、实验要求 1.请查阅资料,了解FreeBSD 项目的各个方面,比如它的历史、目标、开发模式; 2.学习使用FreeBSD,(账号:root;密码:无),学习使用常用命令;; 3.详细记录探索学习的内容和实验的整个过程,包括资料的查询、资料的来源(资料 名称、网址等)、所做的各种尝试、以及最终的结果(包含截屏); 4.对整个实验过程进行分析总结,给出详细步骤; 三、实验设备(环境) 1.WindowsXP操作系统 2.Vmware虚拟机 3.FreeBSD操作系统 四、实验内容与步骤 1.FreeBSD的基本知识; 1.1FreeBSD简介; FreeBSD是一种类UNIX操作系统,是由经过BSD、386BSD和4.4BSD发展而来的Unix的一个重要分支。FreeBSD 为不同架构的计算机系统提供了不同 程度的支持。并且一些原来BSD UNIX的开发者后来转到FreeBSD的开发,使得 FreeBSD在内部结构和系统API上和UNIX有很大的兼容性。由于FreeBSD宽松 的法律条款,其代码被好多其他系统借鉴包括苹果公司的macOS,正因此由于 MacOS X的UNIX兼容性,使得macOS获得了UNIX商标认证。 不同版本的FreeBSD可以支持x86、amd64(x86_64)、ARM、IA-64、PowerPC、PC-98。SPARC等架构 1.2FreeBSD历史; FreeBSD的发展始于1993年,取源于386BSD。然而,因为386BSD源代码的合理性受到质疑以及Novell(当时UNIX的版权拥有者)与伯克利接连而来的 诉讼,FreeBSD在1995年1月发布的2.0-RELEASE中以加州大学的4.4BSD-Lite Release全面改写。

Vi常用命令

进入vi的命令 (1) 移动光标类命令 (1) 屏幕翻滚类命令 (2) 编辑插入文本类命令 (3) 删除命令 (5) 搜索及替换命令 (6) 选项设置 (8) 组合命令 (10) 最后行方式命令 (14) 寄存器操作 (15) 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename vi filename....filename :打开多个文件,依次进行编辑 移动光标类命令 h :光标左移一个字符 l :光标右移一个字符 space:光标右移一个字符 Backspace:光标左移一个字符 k或Ctrl+p:光标上移一行 j或Ctrl+n :光标下移一行 Enter :光标下移一行 w或W :光标右移一个字至字首 b或B :光标左移一个字至字首 e或E :光标右移一个字至字尾 ) :光标移至句尾 ( :光标移至句首 }:光标移至段落开头 {:光标移至段落结尾 nG:光标移至第n行首 n+:光标下移n行

n-:光标上移n行 n$:光标移至第n行尾 H :光标移至屏幕顶行 M :光标移至屏幕中间行 L :光标移至屏幕最后行 0:(注意是数字零)光标移至当前行首 $:光标移至当前行尾 ^ 光标移到行首 f 光标移到当前光标位置后面的第一个指定的字符下 F 光标移到当前光标位置前面的第一个指定的字符下 t 光标移到当前光标位置后面的第一个指定的字符前 T 光标移到当前光标位置前面的第一个指定的字符前 % 光标移动到与当前括号匹配的括号处 :n 光标移动到指定行 按数字:0:移到文章的开头。 按G:移动到文章的最后。 按w:光标跳到下个字的开头 按e:光标跳到下个字的字尾 按b:光标回到上个字的开头 按:#l:光标移到该行的第#个位置,如:5l,56l。 跳至指定的行 Ctrl + g列出光标所在行的行号。 #G:例如,15G,表示移动光标至文章的第15行行首 14.光标控制 k:上移nk 上移n行 j:下移nj 下移n行 将光标移到第n行,按下mk 将光标移到第m行,按下"ay'k 即将第n到m的行存到a寄存器,以此类推,b,c........寄存器等 屏幕翻滚类命令 Ctrl+u:向文件首翻半屏 Ctrl+d:向文件尾翻半屏 Ctrl+f:向文件尾翻一屏 Ctrl+b;向文件首翻一屏

相关主题
文本预览
相关文档 最新文档