vi下的一些常用命令

合集下载

linux文件编辑vi的常见操作命令

linux文件编辑vi的常见操作命令

linux文件编辑vi的常见操作命令vi是一款常用的文本编辑器,在Linux系统中被广泛使用。

下面将介绍vi的常见操作命令,帮助初学者快速掌握vi的基本使用。

1. 打开文件:使用vi命令加上要编辑的文件名,例如`vi filename`。

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

2. 保存文件:在正常模式下,按下`:w`命令可以将文件保存。

如果文件是新创建的,需要指定文件名,例如`:w newfilename`。

3. 退出vi:在正常模式下,输入命令`:q`可以退出vi。

如果文件有未保存的修改,vi会提示保存或放弃修改。

如果想强制退出vi,可以使用命令`:q!`。

4. 插入文本:在正常模式下,按下`i`命令可以进入插入模式,在光标位置前插入文本。

按下`a`命令可以在光标位置后插入文本。

按下`o`命令可以在下一行插入新行并进入插入模式。

5. 删除文本:在正常模式下,按下`x`命令可以删除光标所在位置的字符。

按下`dd`命令可以删除整行。

按下`dw`命令可以删除一个词。

按下`d$`命令可以删除光标位置到行尾的内容。

6. 复制和粘贴文本:在正常模式下,按下`yy`命令可以复制整行。

按下`yw`命令可以复制一个词。

按下`p`命令可以粘贴复制的内容。

7. 撤销和重做:在正常模式下,按下`u`命令可以撤销上一步操作。

按下`Ctrl + r`命令可以重做被撤销的操作。

8. 查找和替换:在正常模式下,按下`/text`命令可以向下查找匹配的文本。

按下`?text`命令可以向上查找匹配的文本。

按下`:%s/old/new/g`命令可以替换全文中的old为new。

9. 移动光标:在正常模式下,按下`h`命令可以将光标向左移动一个字符。

按下`j`命令可以将光标向下移动一行。

按下`k`命令可以将光标向上移动一行。

按下`l`命令可以将光标向右移动一个字符。

按下`gg`命令可以将光标移动到文件开头。

按下`G`命令可以将光标移动到文件末尾。

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次。

linux vi用法

linux vi用法

linux vi用法
LinuxVI编辑器是一个非常强大的文本编辑器,通常用于在命令行界面中编辑文本文件。

它不仅可以编辑文本文件,还可以用于编写脚本,记笔记等。

以下是一些常用的Linux VI编辑器用法:
1. 打开文件:在终端中输入vi filename,即可打开一个名为filename的文件。

2. 插入模式:按下i键即可进入插入模式,此时可以开始编辑文本。

3. 保存并退出:按下Esc键,输入:wq即可保存并退出文件。

4. 放弃修改退出:按下Esc键,输入:q!即可放弃修改并退出文件。

5. 查找字符串:在命令模式下输入/字符串,即可查找当前文件中包含该字符串的位置。

6. 替换字符串:在命令模式下输入:s/old/new/g,即可将所有的old替换为new。

7. 删除一行:在命令模式下输入dd即可删除一行。

8. 撤销操作:在命令模式下输入u即可撤销上一次操作。

9. 复制粘贴:在命令模式下将光标移动到需要复制的文本上,按下yy即可复制,将光标移动到需要粘贴的位置,按下p即可粘贴。

总之,Linux VI编辑器是一个非常实用的编辑器,它的功能非常强大,掌握一些基本的用法,可以提高工作效率。

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的常用命令
vi是Linux系统中一种常用的文本编辑器,它可以通过命令行界面进行操作。

对于初学者来说,掌握一些vi的常用命令是必不可少的。

下面是一些常见的vi命令:
1.打开文件:vi filename
2.保存文件:先按Esc键退出编辑模式,然后输入:wq
3.放弃修改:先按Esc键退出编辑模式,然后输入:q!
4.光标移动:
h:左移一个字符
j:下移一行
k:上移一行
l:右移一个字符
5.删除字符:
x:删除光标所在的字符
dd:删除光标所在的一整行
6.撤销上一步操作:u
7.查找字符:
/char:查找字符char(向下查找)
:查找字符char(向上查找)
n:继续查找下一个匹配项
N:继续查找上一个匹配项
8.替换字符:
:r filename:将filename文件的内容插入到当前光标所在位置 :s/old/new/g:将当前行的old替换为new
:%s/old/new/g:将整个文件中的old替换为new
以上是一些vi的常用命令,掌握了这些命令后,你可以更加方便地使用vi编辑器进行文本编辑。

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常用操作:i、x、:wq、dd、p(插入模式、删除光标字符、存盘退出、删除当前行、。。。

浅析VI常用操作:i、x、:wq、dd、p(插入模式、删除光标字符、存盘退出、删除当前行、。。。

浅析VI常⽤操作:i、x、:wq、dd、p(插⼊模式、删除光标字符、存盘退出、删除当前⾏、。

⼀、在 Insert / Normal 模式下编辑⽂档(五个命令:i,x,:wq,dd,p) 打开vim之后默认是Normal模式。

Normal模式下你可以操作你的光标,接下来是Normal模式中的⼀些简单命令,在Normal模式下,⼏乎所有的键都是功能键。

1、按下 i 键,进⼊Insert模式,你就可以输⼊⽂本了,就像⽤“记事本”⼀样。

2、按 esc 退出 insert 模式,进⼊ normal 模式。

3、5⼤命令i →Insert模式,按 ESC 回到Normal模式.x →删当前光标所在的⼀个字符。

:wq →存盘 + 退出 (:w 存盘, :q 退出) (注::w 后可以跟⽂件名)dd →删除当前⾏,并把删除的⾏存到剪贴板⾥p →粘贴剪贴板 i 进⼊ insert 模式修改了⽂件之后,记得 :wq 存盘+退出4、hjkl (强例推荐使⽤其移动光标,但不必需) ,你也可以使⽤光标键 (←↓↑→) 注: j 就像下箭头功能hjkl —— 效果等同于←↓↑→,⽤于移动光标:help<command> —— 显⽰相关命令的帮助5、除了i之外,还有别的插⼊模式可以选择a —— 在光标后插⼊o —— 在当前⾏后插⼊新⾏O —— 在当前⾏前插⼊新⾏⼆、VI 与 VIM 的区别 vi 编辑器是所有Unix及Linux系统下标准的编辑器,它就相当于windows系统中的记事本⼀样,它的强⼤不逊⾊于任何最新的⽂本编辑器。

它是我们使⽤Linux系统不能缺少的⼯具。

由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,学会它后,您将在Linux的世界⾥畅⾏⽆阻。

vim 具有程序编辑的能⼒,可以以字体颜⾊辨别语法的正确性,⽅便程序设计;因为程序简单,编辑速度相当快速。

vim 可以当作 vi 的升级版本,他可以⽤多种颜⾊的⽅式来显⽰⼀些特殊的信息。

VI常用命令

VI常用命令

VI常用命令整理1、复制多行,并粘贴(命令模式下)1)将光标定位于想开始复制的行,然后输入想要复制的行数:如3,然后输入yy2)定位到需要粘贴到的前一行,输入p2、删除多行(命令模式下)1)将光标定位于想要开始删除的行,然后输入想要删除的行数:如3,然后输入dd说明:其实这个操作是剪切操作,如果需要将刚才删除的行粘贴到另外一个地方,则定位到需要粘贴到的前一行,输入p3、保存退出操作(命令模式下)保存到一个新文件:w filename (输入“w filename”,将文章存入指定的文件名filename)没有修改任何内容,退出:q已修改内容,但不希望保存,强制退出:q!保存并退出命令:x或wqx和wq的区别:wq强制性写入文件并退出。

即使文件没有被修改也强制写入,并更新文件的修改时间。

:x写入文件并退出。

仅当文件被修改时才写入,并更新文件修改时间,否则不会更新文件修改时间。

这两者一般情况下没什么不一样,但是在编程方面,对编辑源文件可能会产生重要影响。

因为文件即使没有修改,":wq"强制更新文件的修改时间,这样会让make编译整个项目时以为文件被修改过了,然后就得重新编译链接生成可执行文件。

这可能会产生让人误解的后果,当然也产生了不必要的系统资源花销。

4、翻页操作向文件尾翻页命令:Ctrl+f 向文件尾翻半页命令:Ctrl+d向文件首翻页命令:Ctrl+b 向文件首翻半页命令:Ctrl+u5、替换光标所在字符命令:r6、行内快数跳转^或0移动到本行行首$移动到本行行尾显示行号和取消行号(末行模式使用)set nu显示行号set nonu取消行号7、在命令模式下,使用以下命令可以快速的在行间跳转1G跳转到文件首行或gg(这个是自己试验出来的)G跳转到尾行(shift+g)#G跳转到文件的#行8、进入输入模式i: 插入,从目前光标所在之处插入所输入的文字。

a: 增加,目前光标所在的下一个字开始输入文字。

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

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:在同一方向重复上一次搜索命令
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整行,使游标所在该行复制到记忆体缓冲区
<ctrl><g> 显示该行之行号、档案名称、档案中最末之行号、游标所在行号占
总行号之百分比
$ 由游标所在位置至该行的最后一个字元。

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

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

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

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

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

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

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

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

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

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

相关文档
最新文档