vi 操作指令

合集下载

vi操作命令大全完整版

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视窗移动*<Ctrl> + f 视窗下卷一页 *<Ctrl> + b 视窗上卷一页 <Ctrl> + d 视窗下卷半页<Ctrl> + u 视窗上卷半页 * <Ctrl> + e 视窗下卷一行 * <Ctrl> + y 视窗上卷一行3.4删除操作x 删除游标所在字元 X 删除游标前一字元 dw 从游标当前位置开始向后删除一个单词 db 从游标当前位置开始向前删除一个单词 d0 从行首删除至当前游标位置 d$ 从游标当前位置删除至行尾 dd 删除游标所在行 D 同d$3.5修改操作s 修改游标所在字元,修改完成后按Esc键结束 S 修改整行内容,修改完成后按Esc键结束 r 替换当前游标所在字元 R 进入替换状态,直至按Esc键结束 cw 修改一个单词(从游标位置至词尾) cb 修改一个单词(从词首至游标位置) cc 修改整行内容,完成后按Esc 键结束,同S c0 修改行首至游标位置的内容 c$ 修改游标位置至行尾的内容 ~ 游标所在字元大小写切换3.6指令重复在指令模式中,可在指令前面加入一个数字n,则该指令会重复执行n次。

vi指令说明(完整版)

vi指令说明(完整版)

vi指令说明(完整版).vi 的操作模式==============vi 提供两种操作模式:输入模式(insert mode)和指令模式(command mode)。

当用户进入vi 后,即处在指令模式下,此刻键入之任何字符皆被视为指令。

在此模式下可进行删除、修改等动作。

若要输入数据,则需进入输入模式。

.输入模式=========如何进入输入模式a (append) 由光标之后加入数据。

A 由该行之末加入数据。

i (insert) 由光标之前加入数据。

I 由该行之首加入数据。

o (open) 新增一行于该行之下供输入数据之用。

O 新增一行于该行之上供输入数据之用。

如何离开输入模式《ESC》结束输入模式。

.指令模式=========光标之移动h 向左移一个字符。

j 向上移一个字符。

k 向下移一个字符。

l 向右移一个字符。

0 移至该行之首$ 移至该行之末。

^ 移至该行的第一个字符处。

H 移至窗口的第一列。

M 移至窗口的中间那列。

L 移至窗口的最后一列。

G 移至该档案的最后一列。

+ 移至下一列的第一个字符处。

- 移至上一列的第一个字符处。

( 移至该句之首。

(注一)) 移至该句之末。

{ 移至该段落之首。

(注二)} 移至该段落之末。

nG 移至该档案的第n 列。

n+ 移至光标所在位置之后的第n 列。

n- 移至光标所在位置之前的第n 列。

<Ctrl><g> 会显示该行之行号、文件名、档案中最末行之行号、游标所在行号占总行号之百分比。

注一:句子(sentence)在vi中是指以『!』、『.』或『?』结束的一串字。

注二:段落(paragraph)在vi中是指以空白行隔开的文字。

.窗口的移动===========<Ctrl><f> 窗口往下卷一页。

<Ctrl><b> 窗口往上卷一页。

<Ctrl><d> 窗口往下卷半页。

<Ctrl><u> 窗口往上卷半页。

vi编辑器常用命令

vi编辑器常用命令

vi编辑器常⽤命令⼀.vi编辑器简介vi是unix和linux系统内嵌的标准⽂字编辑器,它是⼀种交互类型的正⽂编辑器,它可以⽤来创建和修改正⽂⽂件。

⼆.vi编辑器的操作模式1.命令⾏模式vi的默认模式。

在这⼀模式中,所有的输⼊都被解释成vi命令。

可以执⾏修改、复制移动、粘贴和删除正⽂等命令,也可以进⾏光标移动、搜索字符串和退出vi的操作等。

光标移动$ 光标移动到**当前⾏的结尾**0 光标移动到**当前⾏的开始**G 光标移动到**这个⽂件的最后⼀⾏**nG n为数字,光标移动到**这个⽂件的第n⾏**gg 移动到**这个⽂件的第⼀⾏==> 1G**H 光标移动到**当前屏幕的第⼀⾏**M 光标移动到**当前屏幕的中央那⼀⾏**L 光标移动到**当前屏幕的最后⼀⾏**进⼊编辑模式a 进⼊编辑模式并在光标之后进⾏添加i 进⼊编辑模式并在光标之前进⼊插⼊o进⼊编辑模式并在当前⾏下开启新的⼀⾏O进⼊编辑模式并在当前⾏上开启新的⼀⾏剪切、复制、粘贴dd 删除光标所在的那⼀⾏(也可以认为是剪切)ndd n为数字,删除光标所在的向下n⾏yy 复制光标所在的那⼀⾏nyy n为数字,复制光标所在的向下n⾏P 将剪切或复制的数据在光标上⼀⾏粘贴p 将剪切或复制的数据在光标下⼀⾏粘贴撤销、重做u 撤销上⼀个操作ctrl + r 重做上⼀个操作2.编辑模式在编辑模式中,可以往⼀个⽂件中输⼊正⽂。

在这⼀模式下,输⼊的每个字符都被vi编辑器解释为输⼊的正⽂。

使⽤Esc键返回命令⾏模式3.扩展模式在⼀些unix系统上也叫做最后⼀⾏模式。

在这⼀模式下,可以使⽤⼀些⾼级编辑命令,如搜寻和替代字符串、存盘或退出vi编辑器等。

要进⼊最后⼀⾏模式,需要在命令⾏模式中输⼊( 。

shfit + ":"w 将⽂件写⼊磁盘q 退出vi编辑器(在未修改⽂件时可⽤)wq ⽂件写⼊后退出q! 强制退出(不保存)。

Vi常用命令

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编辑时发生系统崩溃,恢复filenamevi 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。

vi命令大全

vi命令大全
从shell中启动可视化编辑器:
vi filename:
指示shell启动vi编辑器,并将参数filename传给它。如果当前目前中存在该文件,则vi编辑器将它解释为要打开的文件;如果没有该文件,则vi编译器创建新文件。
vi file1 file2 file3:
shell传递3个参数给vi,vi将它们解释为要打开的文件。可以使用:w命令保存文件,使用:n命令访问下一个文件
i(小写) 从光标的左侧开始插入文本
I(大写) 从当前行的行首插入文本
o(小写) 在光标的下面打开(或插入)一个新行
O(大写) 在光标的上面打开一个新行
:#r filename 例如,:8r report.old读取文件report.old,并将它的内容放到当前文件的第8行之后
Esc 无论使用什么命令进入了追加/插入模式,都可以通过按Esc键离开追加模式返回到vi的命令模式
T# 在当前行上向左移动光标,将它移到字符#的第1个实例的前一字符
/word 将光标向前移到单词word的下一个实例
?word 将光标向后移到单词word的上一个实例
n 将光标移到前面命令/word或?word中指定模式的下一个实例
显示调整命令
Ctrl+D 显示文件中的下半屏文本
Ctrl+U 显示文件中的上半屏文本
view filename:
打开文件进行编辑,但是拒绝保存对文件的修改,除非使用w!命令
光标移动命令:
hjkl 将光标分别向左、下、上、右移动一个字符
0(零) 将光标移到当前行的行首
^(脱字符) 同0一样将光标移到当前行的行首
$ 将光标移到当前行的行末

vi指令大全

vi指令大全

Vi指令大全1 进入vi的命令2 移动光标类命令3 屏幕翻滚类命令4 插入文本类命令5 删除命令6 搜索及替换命令7 选项设置8 最后行方式命令9 寄存器操作进入vi的命令vi filename: 打开或新建文件,并将光标置于第一行首vi +n filename: 打开文件,并将光标置于第n行首vi + filename: 打开文件,并将光标置于最后一行首vi +/pattern filename: 打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename: 在上次正用vi编辑时发生系统崩溃,恢复filenamevi 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: 从光标开始处向文件首搜索patternn: 在同一方向重复上一次搜索命令N: 在反方向上重复上一次搜索命令: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写到自己终端上的信息最后行方式命令:n1,n2 co n3: 将n1行到n2行之间的内容拷贝到第n3行下:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下:n1,n2 d: 将 n1行到n2行之间的内容删除:w: 保存当前文件:e filename: 打开文件filename进行编辑:x: 保存当前文件并退出:q: 退出vi:q!: 不保存文件并退出vi:!command: 执行shell命令command:n1,n2 w!command: 将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入:r!command: 将命令command的输出结果放到当前行寄存器操作"?nyy: 将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字"?nyw: 将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字"?nyl: 将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字"?p: 取出寄存器?中的内容并将其放到光标位置处。

vi基本操作

vi基本操作

vi基本操作VI基本操作VI是一款常用的文本编辑器,主要用于在Unix/Linux系统中编辑和查看文件。

学会使用VI基本操作可以提高工作效率,以下是VI基本操作的详细介绍。

1. 打开VI在终端输入vi命令即可打开VI编辑器。

如果要打开一个文件,可以在vi后面加上文件名,例如:vi file.txt。

2. 模式切换VI有三种模式:命令模式、插入模式、底行模式。

命令模式:默认模式,按下Esc键即可进入。

插入模式:用于输入文本内容,按下i或a键即可进入。

底行模式:用于执行一些命令和设置选项,按下冒号(:)即可进入。

3. 命令模式下的基本操作移动光标:h键向左移动一个字符;j键向下移动一行;k键向上移动一行;l键向右移动一个字符;0键移到行首;$键移到行尾;G键移到文件末尾。

删除:x键删除光标所在位置的字符;dd命令删除当前光标所在行;D命令删除从当前光标到行尾的所有内容。

撤销:u命令撤销上一步操作。

复制和粘贴:yy命令复制当前光标所在行;p命令将复制的内容粘贴到当前光标所在行的下一行。

查找和替换:/关键字命令查找指定关键字;:s/原字符串/新字符串/g命令将当前光标所在行中的所有原字符串替换为新字符串。

4. 插入模式下的基本操作插入文本:按下i或a键进入插入模式,输入文本内容即可。

退出插入模式:按下Esc键即可回到命令模式。

5. 底行模式下的基本操作保存文件::w命令将文件保存;:wq命令保存并退出VI编辑器。

退出不保存::q!命令强制退出不保存修改。

设置选项::set nu命令显示行号;:set nonu命令取消显示行号。

6. 快捷键VI有许多快捷键可以提高编辑效率,以下是常用的快捷键:Ctrl+f:向前翻页Ctrl+b:向后翻页Ctrl+d:向前翻半页Ctrl+u:向后翻半页Ctrl+g:显示当前文件名和光标位置7. 结语以上是VI基本操作的详细介绍,掌握这些操作可以更加高效地使用VI编辑器。

需要注意的是,VI编辑器相对于其他文本编辑器来说比较复杂,初学者可能需要花费一些时间来熟悉它的操作方式。

vi指令说明(完整版)

vi指令说明(完整版)

vi指令说明(完整版)vi指令说明(完整版)⽂章内容来⾃上书⽹址,因为其使⽤的繁体,看着不是很舒服,简单转换成简体,如果有什么转换不清晰的,可以查看繁体版本。

.vi的操作模式vi提供两种操作模式:输⼊模式(insert mode)和指令模式(command mode)。

当使⽤者进⼊vi后,即处在指令模式下,此刻键⼊的任何字皆被视为指令。

在次模式下可进⾏删除、修改等动作。

若要输⼊⽂本,则需进⼊输⼊模式。

.输⼊模式如何进⼊输⼊模式a(append): 在⿏标之后加⼊⽂本A:在该⾏末尾加⼊⽂本i(insert):在⿏标之前加⼊⽂本I:在该⾏开头加⼊⽂本o(open):新增⼀⾏在该⾏之下供输⼊⽂本之⽤O:新增⼀⾏在该⾏之上供输⼊⽂本之⽤如何离开输⼊模式:esc:结束输⼊模式.指令模式⿏标移动h:向左移动⼀位j:向上移动⼀位k:向下移动⼀位l:向右移动⼀位O:移动⾄该⾏之⾸$:移动⾄该⾏末尾^:移到该⾏的第⼀个字符处H:移动到视窗的第⼀列M:移动到视窗的中间那列L:移动到视窗的最后⼀列G:移动到该⽂件的最后⼀列+:移动到下⼀列的第⼀个字符处-:移动到上⼀列的第⼀个字符处(:移动到该句之⾸):移动到该句末尾{:移动到该段落之⾸}:移动到该段落末尾nG:移动到该⽂件的第 n 列n+:移动到⿏标所在位置之后的第 n 列n-:移动到⿏标所在位置之前的第 n 列会显⽰该⾏的⾏号、⽂件名称、⽂件中最末⾏的⾏号、⿏标所在⾏号占总⾏号的百分⽐注⼀:句⼦在 vi 中指以 ! . ? 结束的⼀串字注⼆:段落在 vi 中指以空⽩⾏隔开的⽂字视窗移动视窗往下翻⼀页。

视窗往上翻⼀页。

视窗往上翻⼀页。

视窗往下翻半页。

视窗往上翻半页。

视窗往上翻半页。

视窗往下翻⼀⾏。

视窗往上翻⼀⾏。

.删除、复制及修改指令介绍(较少使⽤)d(delete)、c(change)和 y(yank)这⼀类的指令在 vi 中的指令格式为:Operator + Scope = command运算符 + 范围 = command运算符:d : 删除指令。

vi基础命令

vi基础命令

vi基础命令vi是一款常用的文本编辑器,是Unix和类Unix操作系统中最流行的编辑器之一。

它具有简单易用、功能强大的特点,可以满足用户对于编辑文本文件的基本需求。

本文将介绍vi的基础命令,帮助读者快速掌握vi的使用方法。

vi的基本操作包括进入编辑模式、保存退出、移动光标、插入文本、删除文本等。

首先,我们需要知道如何进入vi编辑器。

在终端中输入vi命令,后面跟上要编辑的文件名,即可进入vi编辑器界面。

进入编辑模式后,可以使用各种命令进行编辑操作。

保存退出是每次编辑完文件后必须要做的操作。

在vi中,可以使用命令:w来保存文件,使用命令:q来退出编辑器。

如果文件有修改但未保存,可以使用命令:wq来同时保存并退出编辑器。

在编辑模式下,移动光标是非常常用的操作。

vi提供了多种方式来移动光标,包括使用方向键、使用hjkl键、使用Ctrl键加上hjkl 键等。

例如,按下h键将光标向左移动一个字符,按下j键将光标向下移动一行。

插入文本是vi编辑器的核心功能之一。

在编辑模式下,按下i键即可进入插入模式,此时可以输入文本。

按下Esc键可以退出插入模式并返回到编辑模式。

删除文本也是vi编辑器的常用功能。

在编辑模式下,可以使用x命令删除光标所在位置的字符,使用dd命令删除光标所在行的内容。

如果要删除多行内容,可以先将光标移动到要删除的第一行,然后按下dd命令,再移动光标到最后一行,按下dd命令即可删除多行内容。

vi还提供了复制、粘贴、撤销等功能。

在编辑模式下,可以使用y 命令复制选中的文本,使用p命令将复制的文本粘贴到光标所在位置。

使用u命令可以撤销上一次的操作。

除了基本命令外,vi还提供了一些高级的编辑功能。

例如,可以使用/命令进行搜索,使用:n命令进行跳转到指定行。

在编辑模式下,可以使用.命令重复上一次的操作。

在vi编辑器中,还可以使用一些快捷键来提高编辑效率。

例如,使用Ctrl+f可以向下翻页,使用Ctrl+b可以向上翻页。

vi常用指令

vi常用指令

vi常用指令VI是一款非常实用的文本编辑器。

它经常被用于程序编写、文件编辑等方面。

VI的操作比较简单,只要掌握几个常用的指令,就可以轻松完成许多工作。

本文将会介绍VI的常用指令,帮助读者更好地使用VI。

一、VI的三种模式VI有三种模式:命令模式、插入模式和底行模式。

在命令模式下,我们可以用各种命令对文本进行编辑。

在插入模式下,我们可以直接输入文本。

在底行模式下,我们可以执行一些特定的命令,如保存文件、退出VI等。

二、进入/退出VI进入VI的方法有两种:一个是使用命令vi,另一个是使用命令vim。

两者的效果是一样的,只是vi是VIM的简称。

退出VI的方法有两种:一个是在命令模式下输入命令:wq!表示保存并退出;另一个是在命令模式下输入命令:q!表示不保存并退出。

三、命令模式下的常用指令1.移动光标:我们可以使用h、j、k、l命令将光标左移、下移、上移、右移。

2.插入文本:在命令模式下,我们可以按下i、a、o等指令,进入插入模式,开始编辑文本。

3.删除文本:我们可以使用命令x、dd等来删除文本。

其中x命令会删除光标所在位置的一个字符,而dd命令可以删除一整行。

4.复制/粘贴文本:我们可以使用命令y、p等来复制/粘贴文本。

其中y命令会复制选定的文本,而p命令会将文本粘贴到光标下方。

5.替换文字:我们可以使用命令:s/old/new/g,将old替换为new,其中g表示全局匹配。

6.查找替换:我们可以使用命令:%s/old/new/gc,将old替换为new,其中gc表示全局匹配并要求确认。

四、底行模式下的常用指令1.保存文件:我们可以在命令模式下输入命令:w,保存当前的编辑内容。

2.查找文本:我们可以在命令模式下输入命令:/text,用于查找text。

按下n可以继续查找下一个匹配项。

3.退出VI:我们可以在命令模式下输入命令:q,表示退出VI。

4.保存并退出VI:我们可以在命令模式下输入命令:wq,用于保存当前的编辑内容并退出VI。

vi使用方法

vi使用方法

vi使用方法
VI编辑器是一款经典的文本编辑器,它在Unix和Linux系统中被广泛使用。

VI编辑器的使用方法虽然有些复杂,但一旦掌握,就能够极大地提高文本编辑的效率和灵活性。

本文将介绍VI编辑器的基本使用方法,帮助初学者快速上手。

VI编辑器有两种模式,命令模式和插入模式。

在命令模式下,用户可以执行各种命令,如移动光标、复制粘贴、查找替换等操作;在插入模式下,用户可以输入文本。

要进入插入模式,可以按下i键;要退出插入模式,可以按下Esc键。

在命令模式下,可以使用h、j、k、l键来分别向左、下、上、右移动光标;使用x键删除光标所在位置的字符;使用dd命令删除整行文本;使用yy命令复制整行文本;使用p命令粘贴复制的文本。

此外,还可以使用:wq命令保存并退出VI 编辑器;使用:q!命令放弃修改并退出VI编辑器。

VI编辑器还支持查找和替换功能。

在命令模式下,可以使用/加上要查找的关键词来进行查找;使用:s/old/new/g命令来进行替换,其中old是要被替换的内容,new是替换后的内容,g表示全局替换。

VI编辑器的基本使用方法就是这些,虽然有些命令看起来比较复杂,但只要多加练习,就能够熟练掌握。

希望本文能够帮助初学者快速上手VI编辑器,提高工作效率。

vi命令大全

vi命令大全

移动光标h将光标左移一格l将光标右移一格。

k或Ctrl+p光标上移一行j或Ctrl+n光标下移一行w将光标移到下一个小字的前面。

W将光标移到下一个大字的前面。

b将光标移到前一个小字的前面。

B将光标移到前一个大字的前面。

e将光标移到下一个小字的后面。

E将光标移到前一个大字的后面。

fc把光标移到同一行的下一个c字符处。

Fc把光标移到同一行的前一个c字符处。

tc把光标移到同一行的下一个字符c的前一格。

Tc把光标移到同一行的前一个字符c的后一格。

number|把光标移到递number列上。

+或Enter把光标移至下一行第一个非空白字符。

-把光标移至上一行第一个非空白字符。

)光标移至句尾(光标移至句首}光标移至段落开头{光标移至段落结尾nG光标移至第n行首n+光标下移n行n-光标上移n行n$光标移至第n行尾H把光标移到屏幕最顶端一行。

M光标移至屏幕中间行L光标移至屏幕最后行0(注意是数字零)光标移至当前行首$光标移至当前行尾space字符光标右移一个字符屏幕翻滚Ctrl+f向后滚一页。

Ctrl+d向后滚半页。

Ctrl+b向前滚一页。

Ctrl+u向前滚半页。

Ctrl+e屏幕向下滚一行。

Ctrl+y屏幕项上滚一行。

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

"?nyl字符保存到寄存器?中,其中?为一个字母,n为一个数字将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字插入文本i在光标前I在当前行首a光标后A在当前行尾o在当前行之下新开一行O在当前行之上新开一行r字符替换当前字符R字符及其后的字符,直至按ESC键替换当前字符及其后的字符,直至按ESC键s字符从当前光标位置处开始,以输入的文本替代指定数目的字符S删除指定数目的行,并以所输入文本代替之ncw或nCW修改指定数目的字nCC修改指定数目的行修改ndw或ndW删除光标处开始及其后的n-1个字do删至行首d$删至行尾ndd删除当前行及其后n-1行x或X字符,x删除光标后的,而X删除光标前的删除一个字符,x删除光标后的,而X删除光标前的Ctrl+u删除输入方式下所输入的文本cc或S修改一整行。

写出linuxvi编辑文档的几个常用命令

写出linuxvi编辑文档的几个常用命令

写出linuxvi编辑文档的几个常用命令Linux vi 是一款强大的文本编辑器,是Linux系统中最常用的文本编辑器之一。

在使用vi编辑器时,有一些常用命令是必须掌握的,下面将介绍几个常用的vi命令。

1. 光标移动命令在vi编辑器中,我们需要经常移动光标来定位到需要编辑的位置。

以下是一些常用的光标移动命令:- h:向左移动一个字符- j:向下移动一行- k:向上移动一行- l:向右移动一个字符- 0:移动到行首- $:移动到行尾- gg:移动到文件的第一行- G:移动到文件的最后一行2. 插入和编辑命令在vi编辑器中,我们可以使用插入和编辑命令来输入和修改文本内容。

以下是一些常用的插入和编辑命令:- i:在当前光标位置前插入文本- a:在当前光标位置后插入文本- o:在当前行的下方插入新行并进入插入模式- x:删除当前光标所在位置的字符- dd:删除当前行- yy:复制当前行- p:粘贴复制的内容3. 保存和退出命令在编辑文档时,我们需要保存修改的内容并退出vi编辑器。

以下是一些常用的保存和退出命令:- :w:保存修改的内容,但不退出vi编辑器- :q:退出vi编辑器- :wq:保存修改的内容并退出vi编辑器- :q!:放弃修改的内容并强制退出vi编辑器4. 查找和替换命令当我们在编辑长文档时,经常需要查找和替换特定的文本。

以下是一些常用的查找和替换命令:- /pattern:在文档中向下查找指定的模式- ?pattern:在文档中向上查找指定的模式- n:继续查找下一个匹配项- :s/old/new/:将当前行第一个匹配到的old替换为new- :s/old/new/g:将当前行所有匹配到的old替换为new- :%s/old/new/g:将整个文档中所有匹配到的old替换为new5. 撤销和重做命令在编辑文档过程中,我们可能会犯一些错误,需要撤销前面的操作或者重做已经撤销的操作。

以下是一些常用的撤销和重做命令:- u:撤销前一次操作- Ctrl + r:重做上一次撤销的操作这些是在使用vi编辑器时经常使用的一些常用命令。

一套完整的vi设计手册

一套完整的vi设计手册

一套完整的vi设计手册一套完整的Vi设计手册Vi是一款强大的文本编辑器,广泛用于Unix和Linux操作系统中。

它具有简单的界面和丰富的功能,能够提高编辑效率。

下面是一套完整的Vi设计手册,帮助您快速上手并充分利用Vi的各种功能。

一、Vi的基本操作命令1.常用命令- i:在光标处插入文本- a:在光标后插入文本- dd:删除光标所在行- yy:复制光标所在行- p:粘贴复制或删除的内容- u:撤销上一步操作- /text:查找指定文本2.光标移动- h:光标左移一个字符- l:光标右移一个字符- k:光标上移一行- j:光标下移一行- w:光标移动到下一个单词开头- b:光标移动到上一个单词开头- 0:光标移动到行首- $:光标移动到行末- G:光标移动到文件末尾- :n:跳转到第n行3.文件操作- :w:保存文件- :q:退出Vi- :wq:保存并退出- :q!:强制退出,不保存修改二、Vi的高级操作命令1.替换- :s/old/new:将光标所在行中的第一个old替换为new- :s/old/new/g:将光标所在行中的所有old替换为new- :%s/old/new/g:将整个文件中的所有old替换为new- :%s/old/new/gc:将整个文件中的所有old替换为new,并逐一确认是否替换2.块选择- v:进入可视模式,使用上下左右箭头选择块- V:进入行选择模式,选择整行- Ctrl+v:进入块选择模式,可以选择矩形区域- d:删除选择的内容- y:复制选择的内容- p:粘贴复制或删除的内容3.多文件编辑- :e filename:打开指定文件- :n:下一个文件- :prev或:N:上一个文件- :args file1 file2...:同时编辑多个文件- :qall:关闭所有文件三、配置ViVi可以通过编辑配置文件.vimrc来定制自己的编辑环境。

以下是一些常见的配置选项:1.设置自动缩进```set autoindent```2.设置语法高亮```syntax on```3.设置行号显示```set number```4.设置Vi为默认编辑器将以下行添加到/etc/profile文件中:```export EDITOR=/usr/bin/vi```四、Vi的扩展Vi可以通过安装插件来扩展其功能,以下是几个常见的插件:1. nerdtree:一个强大的文件浏览器插件。

vi命令汇总

vi命令汇总

vi命令汇总vi命令汇总vi⽅⾯⽹上⼀搜⼀⼤堆,这个在我想不起来的时候查阅的多⼀点,我⽤的shell是zsh 进⼊vi的命令vi filename :打开或新建⽂件,并将光标置于第⼀⾏⾸vi +n filename :打开⽂件,并将光标置于第n⾏⾸vi + filename :打开⽂件,并将光标置于最后⼀⾏⾸vi +/pattern filename:打开⽂件,并将光标置于第⼀个与pattern匹配的串处vi -r filename :在上次正⽤vi编辑时发⽣系统崩溃,恢复filenamevi 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:从光标开始处向⽂件尾搜索patternpattern:从光标开始处向⽂件⾸搜索patternn:在同⼀⽅向重复上⼀次搜索命令N:在反⽅向上重复上⼀次搜索命令: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写到⾃⼰终端上的信息最后⾏⽅式命令:n1,n2 co n3:将n1⾏到n2⾏之间的内容拷贝到第n3⾏下:n1,n2 m n3:将n1⾏到n2⾏之间的内容移⾄到第n3⾏下:n1,n2 d :将n1⾏到n2⾏之间的内容删除:w :保存当前⽂件:e filename:打开⽂件filename进⾏编辑:x:保存当前⽂件并退出:q:退出vi:q!:不保存⽂件并退出vi:!command:执⾏shell命令command:n1,n2 w!command:将⽂件中n1⾏⾄n2⾏的内容作为command的输⼊并执⾏之,若不指定n1,n2,则表⽰将整个⽂件内容作为command的输⼊:r!command:将命令command的输出结果放到当前⾏寄存器操作"?nyy:将当前⾏及其下n⾏的内容保存到寄存器?中,其中?为⼀个字母,n为⼀个数字"?nyw:将当前⾏及其下n个字保存到寄存器?中,其中?为⼀个字母,n为⼀个数字"?nyl:将当前⾏及其下n个字符保存到寄存器?中,其中?为⼀个字母,n为⼀个数字"?p:取出寄存器?中的内容并将其放到光标位置处。

vi编辑器常用命令

vi编辑器常用命令
k或Ctrl+p 光标上移一行
j或Ctrl+n 光标下移一行
Enter 光标下移一行
w或W 光标右移一个字至字首
b或B 光标左移一个字至字首
e或E 光标右移一个字至字尾
标移至段落开头
{ 光标移至段落结尾
nG 光标移至第n行首
Ctrl+f 向文件尾翻一屏
Ctrl+b 向文件首翻一屏
插入文本类命令
i 在光标前
I 在当前行首
a 光标后
A 在当前行尾
o 在当前行之下新开一行
O 在当前行之上新开一行
r 替换当前字符
R 替换当前字符及其后的字符,直至按ESC键
:q! 不保存文件并退出vi
Linux下vi编辑器常用命令
进入vi的命令
vi filename 打开或新建文件
vi +n filename 打开文件,并将光标置于第n行首
移动光标类命令
h 光标左移一个字符
l 光标右移一个字符
space 光标右移一个字符
Backspace 光标左移一个字符
?pattern 从光标开始处向文件首搜索pattern
n 在同一方向重复上一次搜索命令
N 在反方向上重复上一次搜索命令
最后行方式命令
:w 保存当前文件
:x 保存当前文件并退出
:q 退出vi
n+ 光标下移n行
n- 光标上移n行
n$ 光标移至第n行尾
H 光标移至屏幕顶行
M 光标移至屏幕中间行
L 光标移至屏幕最后行
0 (注意是数字零)光标移至当前行首

VI编辑器常用命令

VI编辑器常用命令

VI编辑器命令——天天笑笑整理三种工作模式,命令模式、插入模式和试图模式(老版本vi没有试图模式)命令模式下输入插入类命令或替换命令(cw)进入插入模式。

插入模式下按ESC或ctrl+[进入命令模式命令模式下输入v进入视图模式。

1.打开文件命令:vi filename打开或新建文件,并将光标置于第一行首2.退出命令:q直接退出:q!不保存退出:wq保存退出:w保存当前文件3.光标移动命令(命令模式下):h光标左移一个字符l光标右移一个字符j光标下移一行k光标上移一行w光标右移一个字至字首b光标左移一个字至字首e光标右移一个字至字尾0光标移至当前行首^光标移至当前行首$光标移至当前行尾n+光标下移n行n-光标上移n行H光标移至屏幕顶行M光标移至屏幕中间行L光标移至屏幕最后行ctrl+g显示当前行号n shift+g跳转到第n行4.屏幕翻滚类命令Ctrl+u向文件首翻半屏Ctrl+d向文件尾翻半屏Ctrl+f向文件尾翻一屏Ctrl+b向文件首翻一屏5.插入类命令i在光标前a光标后I在当前行首A在当前行尾o在当前行之下新开一行O在当前行之上新开一行6.删除替换字符dw删除单词ndw删除n个单词dd删除当前行ndd删除n行d$删除至行尾d^或d0删除至行首cw删除单词,并进入插入状态ncw删除n个单词,并进入插入状态cc删除当前行,并进入插入状态ncc删除n行,并进入插入状态c$删除至行尾,并进入插入状态c^或c0删除至行首,并进入插入状态R替换当前字符及其后的连续多个字符,直至按ESC键r用输入的字符替换当前字符x x删除光标后的一个字符X x删除光标前的一个字符7.复制黏贴撤销y1将光标处的一个字符复制到缓冲区yw复制当前单词到缓冲区nyw复制n个单词到缓冲区yy复制当前行到缓冲区nyy复制n行到缓冲区y$复制当前位置至行尾到缓冲区y^或y0复制当前位置至行首到缓冲区p将缓冲区的信息粘贴到光标的后面将光标移到复制的首位置,按下v进入试图模式,用hjkl移动,按y复制,按p粘贴u撤消最后执行的命令Ctrl+R恢复命令,也就是撤消掉撤消命令。

vi模式下的基本指令

vi模式下的基本指令

vi模式下的基本指令VI是一款常用的文本编辑器,具备强大的编辑功能。

下面将介绍VI 模式下的基本指令,包括光标移动、插入、删除、复制粘贴、搜索替换等操作。

一、光标移动1. h、j、k、l:分别向左、下、上、右移动光标。

2. w、b:向后、向前移动一个单词。

3. 0、$:移动到行首、行尾。

4. gg、G:跳转到文件开头、文件末尾。

5. Ctrl+f、Ctrl+b:向前、向后翻页。

二、插入与编辑1. i、a:在光标前、后插入文本。

2. o、O:在当前行下、上插入新行。

3. A、I:在行尾、行首插入文本。

4. r:替换当前字符。

5. R:进入替换模式,连续替换多个字符。

三、删除与撤销1. x、X:删除当前字符、前一个字符。

2. dd:删除当前行。

3. dw、db:删除一个单词、前一个单词。

4. D:删除光标后的内容。

5. u:撤销上一步操作。

6. Ctrl+r:恢复被撤销的操作。

四、复制与粘贴1. yy:复制当前行。

2. yw、yb:复制一个单词、前一个单词。

3. p、P:粘贴到光标后、前。

4. dd+p:交换两行位置,相当于剪切黏贴。

五、搜索与替换1. /word:向后搜索指定单词。

2. ?word:向前搜索指定单词。

3. n:跳转到下一个匹配项。

4. N:跳转到上一个匹配项。

5. :s/old/new:替换当前行第一个匹配项。

6. :s/old/new/g:替换当前行所有匹配项。

7. :%s/old/new/g:替换全文所有匹配项。

六、保存与退出1. :w:保存文件。

2. :q:退出编辑器。

3. :wq:保存并退出。

4. :q!:强制退出,不保存修改。

VI编辑器的基本指令可以提高编辑效率,适用于各种文本编辑需求。

掌握这些指令可以更加高效地编辑和管理文本文件。

希望通过本文的介绍,能帮助读者更好地使用VI编辑器进行文本编辑。

vi常用命令集锦

vi常用命令集锦

vi常⽤命令集锦vi编辑器有3种模式:命令模式、输⼊模式、末⾏模式。

掌握这三种模式⼗分重要: 命令模式:vi启动后默认进⼊的是命令模式,从这个模式使⽤命令可以切换到另外两种模式,同时⽆论在任何模式下只要按⼀下[Esc]键都可以返回命令模式。

在命令模式中输⼊字幕“i”就可以进⼊vi的输⼊模式编辑⽂件。

输⼊模式:在这个模式中我们可以编辑、修改、输⼊等编辑⼯作,在编辑器最后⼀⾏显⽰⼀个“--INSERT--”标志着vi进⼊了输⼊模式。

当我们完成修改输⼊等操作的时候我们需要保存⽂件,这时我们需要先返回命令模式,在进⼊末⾏模式保存。

末⾏模式:在命令模式输⼊“:”即可进⼊该模式,在末⾏模式中有好多好⽤的命令。

vim整理alias vi='vim'1)⽂件的打开与关闭vi filename : 打开或新建⽂件,并将光标置于第⼀⾏⾏⾸vi +n filename : 打开⽂件,并将光标置于第n⾏⾏⾸vi + filename : 打开⽂件,并将光标置于最后⼀⾏⾏⾸vi +/pattern filename: 打开⽂件,并将光标置于第⼀个与pattern匹配的串处vi -r filename : 在上次正⽤vi编辑时发⽣系统崩溃,恢复filenamevi filename...filename :打开多个⽂件,依次进⾏编辑:e filename : 打开filename编辑,编辑完后可⽤:hide退回之前编辑的⽂件:sav filename : 将当前⽂件另存为filename:w : 保存⽂件但不退出vi:w file : 将⽂件另存为file但不退出vi:wq或ZZ或:x : 保存⽂件并退出vi:q! : 不保存⽂件,退出vi:e : 放弃所有修改,从上次保存⽂件开始再编辑(重新载⼊⽂件,包含被其它编辑器修改过的):e! : 放弃所有修改,从上次保存⽂件开始再编辑:hide : 隐藏当前编辑的⽂件,回到上⼀次编辑的⽂件(在打开多⽂件时有效):b 2 : 在当前窗⼝切换到第⼆个打开的⽂件^w^w : 多窗⼝切换2)光标控制与屏幕调整h或^h : 将光标向左移⼀个字符j或^j或^n : 将光标向下移⼀⾏k或^p : 将光标向上移⼀⾏l或空格 : 将光标向右移⼀个字符0或| : 将光标移到当前⾏的第⼀列n| : 将光标移到当前⾏的第n列^ : 将光标移到当前⾏的第⼀个⾮空字符$ : 将光标移到当前⾏的最后⼀个字符n$ : 将光标移到当前⾏下第n-1⾏的最后⼀个字符+或return : 将光标移到下⼀⾏的第⼀个字符- : 将光标移到前⼀⾏的第⼀个⾮空字符gg : 将光标移动到⽂件第⼀⾏G : 将光标移到⽂件的最后⼀⾏nG或ngg或:n : 将光标移到⽂件的第n⾏w : 将光标移到下⼀个字的开头W : 将光标移到下⼀个字的开头,忽略标点符号b : 将光标移到前⼀个字的开头B : 将光标移到前⼀个字的开头,忽略标点符号e : 将光标移到下⼀个字的结尾E : 将光标移到下⼀个字的结尾,忽略标点符号L : 将光标移到屏幕的最后⼀⾏M : 将光标移到屏幕的中间⼀⾏H : 将光标移到屏幕的第⼀⾏H : 将光标移动到屏幕的顶⾏nH : 将光标移动到屏幕顶⾏下的第n⾏M : 将光标移动到屏幕的中间L : 将光标移动到屏幕的底⾏nL : 将光标移动到屏幕底⾏上的第n⾏( : 将光标移动到句⼦的开头) : 将光标移动到句⼦的结尾{ : 将光标移动到段落的开头} : 将光标移动到段落的结尾[[ : 将光标移动到函数(段落)开始处]] : 将光标移动到函数(段落)结尾处[{ : 将光标移动到块开始处}] : 将光标移动到块结束处m(a-z) : ⽤⼀个字母来标记当前位置,如⽤mz表⽰标记z'(a-z) : 将光标移动到指定的标记,如⽤'z表⽰移动到标记z处'' : 两个单引号,将光标移动到最近标记的位置`` : 两个反引号(Tab键上⾯那个),将光标移动到光标前⼀次停留的位置^e : 将屏幕上滚⼀⾏^y : 将屏幕下滚⼀⾏^u : 将屏幕上滚半页^d : 将屏幕下滚半页^b : 将屏幕上滚⼀页^f : 将屏幕下滚⼀页^l : 重绘屏幕z-return : 将当前⾏置为屏幕的顶⾏nz-return : 将当前⾏下的第n⾏置为屏幕的顶⾏z. : 将当前⾏置为屏幕的中央nz. : 将当前⾏上的第n⾏置为屏幕的中央z- : 将当前⾏置为屏幕的底⾏nz- : 将当前⾏上的第n⾏置为屏幕的底⾏3)插⼊⽂本a : 在光标后插⼊⽂本A : 在当前⾏尾插⼊⽂本i : 在光标前插⼊⽂本I : 在当前⾏前插⼊⽂本o : 在当前⾏的下边插⼊新⾏O : 在当前⾏的上边插⼊新⾏escape(Esc) : 回到命令模式^v : 切换到visual block模式,此时通过⽅向键选中block, 再按I,然后输⼊需要插⼊的字符,可以在选中块⾏⾸插⼊字符(同理可以将I换为X删除字符).4)修改⽂本rchar : ⽤char替换当前字符(r,即replace当前光标选中字符)Rtext escape : ⽤text替换当前字符直到换下Esc键(R,即进⼊Replace模式)stext escape : ⽤text代替当前字符(s,即删除当前光标选中字符,并进⼊插⼊状态)S或cctext escape : ⽤text代替整⾏(S,即删除当前光标选中⾏,并进⼊插⼊状态)cwtext escape : 将当前字改为text(cw,即删除当前光标后⼀个字,并进⼊插⼊状态)Ctext escape : 将当前⾏余下的改为text(C,即删除当前光标后字符直到⾏尾,并进⼊插⼊状态)cG escape : 修改⾄⽂件的末尾(cG,即删除当前光标后字符直到⽂件结束,并进⼊插⼊状态)ncw或cnw : 修改指定数⽬的字 (cnw,即删除当前光标后n个字符,并进⼊插⼊状态)nC : 修改指定数⽬的⾏ (nC,即删除当前光标后字符直到⾏尾,并删除之后的n-1⾏,并进⼊插⼊状态) ccursor_cmd text escape : 从当前位置处到光标命令位置处都改为text,如假设光标停留在u第10⾏,c5G text escape,即删除第5⾏到第10⾏,并进⼊插⼊状态,输⼊text,直到escape底⾏命令:n1,n2 co n3 : 将n1⾏到n2⾏之间的内容拷贝到第n3⾏下:n1,n2 m n3 : 将n1⾏到n2⾏之间的内容移⾄到第n3⾏下:n1,n2 d : 将n1⾏到n2⾏之间的内容删除:!command : 执⾏shell命令command:n1,n2 w!command : 将⽂件中n1⾏⾄n2⾏的内容作为command的输⼊并执⾏command:w!command : 将⽂件中的内容作为command的输⼊并执⾏之:r!command : 将命令command的输出结果放到当前⾏:1,10 w outfile : 保存⽂件第1⾏到第10⾏到outfile:1,10 w >> outfile : 将⽂件第1⾏到第10⾏追加到outfile⽂件结尾:r infile : 读取infile到当前光标下⼀⾏:nr infile : 读取infile到当前光标第n⾏的下⼀⾏J : 将下⼀⾏连接到当前⾏的末尾nJ : 连接后⾯n⾏5)删除⽂本x : 删除光标处的字符,可以在x前加上需要删除的字符数⽬nx : 从当前光标处往后删除n个字符X : 删除光标前的字符,可以在X前加上需要删除的字符数⽬nX : 从当前光标处往前删除n个字符dw : 删⾄下⼀个字的开头ndw : 从当前光标处往后删除n个字dG : 删除字符直到⽂件结束dd : 删除当前⾏ndd : 从当前⾏开始往后删除n⾏db : 删除光标前⾯的字ndb : 从当前⾏开始往前删除n字:n,md : 从第n⾏开始删除到第m⾏d$ : 从光标处删除到⾏尾dcursor_command : 删除⾄光标命令处,如dG将从当产胆⾏删除⾄⽂件的末尾dh : 删除光标前⼀个字符dl : 删除光标选中的那个字符dj : 删除光标选中⾏及下⼀⾏dk : 删除光标选中⾏及上⼀⾏dH : 从屏幕顶端删除⾄光标处dM : 删除屏幕中央⾏于光标之间的内容dL : 从光标处删除⾄屏幕末尾dk : 删除光标选中⾏及上⼀⾏dH : 从屏幕顶端删除⾄光标处^h或backspace : 删除前⾯的字符(插⼊状态下)^w : 删除前⾯的字(插⼊状态下)6)查找与替换:set ic : 查找时忽略⼤⼩写(ignorecase):set noic : 查找时对⼤⼩写敏感/text : 在⽂件中向前查找texttext : 在⽂件中向后查找text* : 在⽂件中向前查找当前光标选中的字n : 在同⼀⽅向重复查找N : 在相反⽅向重复查找fchar : 在当前⾏向前查找charFchar : 在当前⾏向后查找chartchar : 在当前⾏向前查找char,并将光标定位在text的第⼀个字符Tchar : 在当前⾏向后查找char,并将光标定位在text的第⼀个字符/\cstring : 查找STRING或string,⼤⼩写不敏感/jo[ha]n : 查找john或joan/\< the : 查找the,theatre或then等the开头的单词/the\> : 查找the或breathe等the结尾的单词/\< the\> : 查找 the(空格后紧跟the)/fred\|joe : 查找fred或joe/\<\d\d\d\d\> : 查找4个字符的单词/^\n\{3} : 查找连续3个空⾏:bufdo /searchstr/ : 在所有打开⽂件中查找bufdo %s/some/someelse/g : 在所有打开⽂件中查找some并⽤someelse代替& 重复最后的:s命令:g/text/command : 在所有包含text的⾏运⾏command所表⽰的命令:v/text/command : 在所有不包含text的⾏运⾏command所表⽰的命令:g/string/d : 删除所有包含string的⾏:v/string/d : 删除所有不包含string的⾏:g/text1/s/text2/text3 : 查找包含text1的⾏,⽤text3替换text2:v/text1/s/text2/text3 : 查找不包含text1的⾏,⽤text3替换text2:%s/old/new/g : 将⽂件中所有old替换为new(⼤⼩写敏感):%s/onward/forward/gi : 将⽂件中所有onward替换为forward(忽略⼤⼩写):%s/old/new/gc : 将⽂件中所有old替换为new,替换前需确认:%s/^/hello/g : 将⽂件中所有开头替换为hello:%s/$/Harry/g : 将⽂件中所有结尾替换为Harry:%s/ *$//g : 删除所有空格:%s/Bill/Steve/g : 将当前⽂件的所有Bill替换为Steve:%s/^M//g : 删除所有Dos回车符 (^M):%s/^M/\r/g : 删除所有Dos回车符转化成标准回车符:%s#<[^>]\+>##g : 删除所有HTML标记只留下内容:%s/^.∗\n\1$/\1/ : 删除重复⾏:s/Bill/Steve/ : 将当前⾏第⼀个Bill替换为Steve:s/Bill/Steve/g : 将当前⾏所有Bill替换为Steve:m,n s/Bill/Steve/ : 在m⾏和n⾏之间,将第⼀个Bill替换为Steve:m,n s/Bill/Steve/g : 在m⾏和n⾏之间,将所有Bill替换为Steve:2,35s/old/new/g : 将第2⾏到第35⾏之间所有old替换为new:5,$s/old/new/g : 将第5⾏到⽂件结尾之间所有old替换为newCtrl+a : 将光标选中的数字加1Ctrl+x : 将光标选中的数字减1ggVGg? : 将全⽂替换为回转13位⽂,变换2次可以回到原⽂.7)复制⽂本yw : 将光标后⼀个字放⼊临时缓冲区nyw或ynw : 将光标后n个字放⼊临时缓冲区y : 将当前⾏及下⼀⾏的内容放⼊临时缓冲区(命令模式下)y : 将当前光标选中的内容放⼊临时缓冲区(选择模式下)yy : 将当前⾏的内容放⼊临时缓冲区y$ : 将当前⾏光标之后的内容放⼊临时缓冲区D : 将当前⾏光标之后的内容剪切后放⼊临时缓冲区nyy : 将n⾏的内容放⼊临时缓冲区p : 将临时缓冲区中的⽂本粘贴在当前光标所在⾏下P : 将临时缓冲区中的⽂本粘贴在当前光标所在⾏上gh : 进⼊选择模式,通过光标选择内容,选择完毕后按y将选择内容删除并放⼊缓冲区,并插⼊y,进⼊插⼊模式gH : 进⼊选择模式,通过光标选择内容,选择完毕后按y将选择内容所在⾏删除并放⼊缓冲区,并插⼊y,进⼊插⼊模式gv : 进⼊选择模式,通过光标选择内容,选择完毕后按y将选择内容并放⼊缓冲区,不删除选择内容寄存器操作"(a-z)nyy : 复制n⾏放⼊名字为圆括号内的可命名缓冲区,省略n表⽰当前⾏"(a-z)ndd : 删除n⾏放⼊名字为圆括号内的可命名缓冲区,省略n表⽰当前⾏"(a-z)p : 将名字为圆括号的可命名缓冲区的内容放⼊当前⾏后"(a-z)P : 将名字为圆括号的可命名缓冲区的内容放⼊当前⾏前8)撤消与重复u : 撤消最后⼀次修改U : 撤消当前⾏的所有修改^r : 重新执⾏最近⼀次被撤消的操作. : 重复最后⼀次操作5. : 重复最后⼀次操作5次, : 以相反的⽅向重复前⾯的f、F、t或T查找命令; : 重复前⾯的f、F、t或T查找命令"np : 取回最后第n次的删除(缓冲区中存有⼀定次数的删除内容,⼀般为9)n : 重复前⾯的/或?查找命令N : 以相反⽅向重复前⾯的/或?命令9)vim中的选项:set all : 打印所有选项:set nooption : 关闭option选项:set nu : 每⾏前打印⾏号:set nonu : 每⾏前不打印⾏号:set showmode : 显⽰是输⼊模式还是替换模式:set ic : 查找时忽略⼤⼩写(另⼀种设置见下⽂):set noic : 查找时不忽略⼤⼩写:set list : 显⽰制表符(^I)和⾏尾符号:set ts=4 : 为⽂本输⼊设置tab stops:set ws=4 : 为⽂本输⼊缩进设置4字符:set window=n : 设置⽂本窗⼝显⽰n⾏:syntax on : 打开语法⾼亮:syntax off : 关闭语法⾼亮:set syntax=erlang : 强制语法⾼亮,并按erlang语法显⽰⾼亮10)vim的状态:.= 打印当前⾏的⾏号:= 打印⽂件中的⾏数^g 显⽰⽂件名、当前的⾏号、⽂件的总⾏数和⽂件位置的百分⽐:l 使⽤字母"l"来显⽰许多的特殊字符,如制表符和换⾏符11)shell转义命令:!command : 执⾏shell的command命令,如:!ls:!! : 执⾏前⼀个shell命令:r!command : 读取command命令的输⼊并插⼊,如:r!ls会先执⾏ls,然后读⼊内容:w!command : 将当前已编辑⽂件作为command命令的标准输⼊并执⾏command命令,如:w!grep all:cd directory : 将当前⼯作⽬录更改为directory所表⽰的⽬录:pwd : 显⽰当前⼯作⽬录:so file : 在shell程序file中读⼊和执⾏命令:!pwd : 执⾏pwd命令,然后回到vi!!pwd : 执⾏pwd命令,然后插⼊其输出结果到当前⽂件,并替换光标所在⾏:sh : 将启动⼀个⼦shell,使⽤^d(ctrl+d)返回vi^d或$exit : 退出临时开启的终端并回到vi12)宏与缩写(PS:避免使⽤控制键和符号,不要使⽤字符K、V、g、q、v、*、=和功能键):map key command_seq : 定义⼀个键来运⾏command_seq,如:map e ea,⽆论什么时候都可以e移到⼀个字的末尾来追加⽂本:map : 在状态⾏显⽰所有已定义的宏:umap key : 删除该键的宏:ab string1 string2 : 定义⼀个缩写,使得当插⼊string1时,⽤string2替换string1。

vi 基本操作 -回复

vi 基本操作 -回复

vi 基本操作-回复操作系统是计算机领域中至关重要的一部分,它负责协调和管理计算机的各种资源,同时提供友好的用户界面,使计算机应用程序能够运行。

在众多操作系统中,VI是一种常用的文本编辑器,特别受到程序员和系统管理员的青睐。

本文将一步一步回答关于VI的基本操作。

VI是一种文本编辑器,通常是在命令行界面下使用。

首先,我们需要打开终端,输入vi命令加上要编辑的文件名。

如果文件不存在,则会创建一个新文件。

例如,输入以下命令打开一个名为"example.txt"的文件:vi example.txt一旦文件被打开,你将进入VI的编辑模式。

在编辑模式下,你可以往文本中输入、删除和修改内容。

首先,我们来了解一下一些基本的操作命令。

1. 移动光标:VI有多种移动光标的命令,比如使用箭头键、h、j、k和l。

其中,h向左移动一个字符,l向右移动一个字符,j向下移动一行,k向上移动一行。

你也可以使用组合键进行更快速的移动。

例如,0或者Home 键可以将光标移动到行首,或者End键将光标移动到行尾。

2. 输入文本:在VI中输入文本非常简单。

只需要进入编辑模式,然后直接开始输入即可。

你可以在任意位置输入文本,并且VI会自动调整文本的格式。

若要插入文本到当前行末尾,可以按下大写字母"A'进入插入模式。

3. 删除文本:VI提供了多种删除文本的命令。

比如,命令"x"用于删除当前光标处的字符,"dd"用于删除当前行,"dw"用于删除一个单词。

删除的内容会被放入剪贴板中,可以使用"P"命令将其粘贴到相应位置。

4. 撤销和重做:在编辑过程中,我们可能需要撤销之前的操作或者重做某些操作。

VI中,使用"u"命令可以撤销上一个操作,使用"Ctrl + r"命令可以重做上一个操作。

5. 保存和退出:在编辑完成后,你需要保存你的更改。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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:在同一方向重复上一次搜索命令
N:在反方向上重复上一次搜索命令
: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写到自己终端上的信息
最后行方式命令
:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d :将n1行到n2行之间的内容删除
:w :保存当前文件
:e filename:打开文件filename进行编辑
:x:保存当前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:执行shell命令command
:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入
:r!command:将命令command的输出结果放到当前行
寄存器操作
"?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字"?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字"?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字"?p:取出寄存器?中的内容并将其放到光标位置处。

这里?能是个字母,也能是个数字ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。

进入vi
vi test
离开vi
:q! 离开vi,并放弃刚在缓冲区内编辑的内容。

:wq 将缓冲区内的资料写入磁盘中,并离开vi。

:ZZ 同wq
同wq
:w 将缓冲区内的资料写入磁盘中,但并不离开vi。

:q 离开vi,若文件被修改过,则会被需求确认是否放弃修改的内容,此指令可和: w 配合使用。

Vi 的操作模式
Vi 提供两种操作模式:
输入模式(insert mode)
指令模式(command mode)
当使用者进入vi后,既处于指令模式下,此刻键入所有字元皆被视为指令。

输入模式:a(append) 游标之后加入资料。

A 该行之末加入资料
i (insert) 游标之前加入资料
I 该行之首加入资料
o (open) 新增一行和该行之下供输入资料
O 新增一行和该行之上供输入资料
指令模式:B 移至该行第一个字符,若光标在该行第一字符则光标移至上一行第一字符。

b 由游标所在位置之前一个字串的第一个字元
cc 删除整行,修改整行的内容。

D以行为单位,删除游标在内后面的所有字符。

db 删除该行光标前字符
dd 删除该行
de 删除自光标开始后面的字符
d加字符删除光标所在位置至字符之间的单
E移至该行最后字符,若光标在该行最后字符则光标移至下一行最后字符
e由游标所在位置至该字串的最后一个字元
G 移至该档案的最后一行
h 向前移一个字元
j 向下移一个字元
k 向上移一个字元
0 移至该行之首
M 移至视窗的中间那行
L 移至视窗的最后一行
l 向后移一个字符
0 由游标所在位置该行的第一个字元
nG 移至该档案的第n行
n+ 自游标所在位置向后移n行至该行的第一字符
n- 自游标所在位置向前移n行至该行的第一字符
R 进入取代状态,直到《ESC》为止
s 删除游标所在字元,并进入取代模式直到《ESC》
S 删除游标所在之该行资料,并进入输入模式直到《ESC》
w 由游标所在位置之下一个字串的第一个字元
x 删除游标所在该字元。

X 删除游标所在之前一字元。

r 用接于此指令之后的字元取代(replace)游标所在字元
yy yank整行,使游标所在该行复制到记忆体缓冲区
显示该行之行号、档案名称、档案中最末之行号、游标所在行号占
总行号之百分比
$ 由游标所在位置至该行的最后一个字元。

)由游标所在位置至下一个句子的第一个字元。

(由游标所在位置至该句子的第一个字元。

{ 由游标所在位置至该段落的最后一个字元。

} 由游标所在位置至该段落的第一个字元
yank和delete可将指定的资料复制到记忆体缓冲区,而藉有put指令可将缓冲区内的资料复制到荧幕上
例如:搬移一行:在该行执行dd
游标移至目的地
执行p
复制一行:在该行执行yy
游标移至目的地
执行p
视窗移动:
视窗往下卷一页
视窗往上卷一页
视窗往下卷半页
视窗往上卷半页
视窗往下卷一行
视窗往上卷一行
删除、复制及修改指令介绍:
d(delete)、c(change)和y(yank)这一类的指令在vi 中的指令格式为:
operation+scope=command
(运算子)(范围)
运算子:
d 删除指令。

删除资料,但会将删除资料复制到记忆体缓冲区。

y 将资料(字组、行列、句子或段落)复制到缓冲区。

p 放置(put)指令,和d和y配合使用。

可将最后delete或yank的资料放置于游标所在位置之行列下。

c 修改(change)指令,类似delete于insert的组合。

删除一个字组、句子等资料,并插入新键入的。

相关文档
最新文档