vim简介

vi的工作模式

vi有三种工作模式:命令模式,插入模式,和末行模式。

1.命令模式

在shell中启动vi时,最初就是进入命令模式。在该模式可以输入各种vi命令,可以进行光标的移动,字符,字,行的删除复制粘贴等操作。此时从键盘上输入的任何字符都作为命令来解释,在其他两种模式下,按就可以转换到命令模式。
在这里插入图片描述

2.插入模式

插入模式主要用于输入文本。在该模式下,用户输入的任何字符都作为文件的内容保存起来,并会显示在屏幕。在命令行模式下输入i,a等命令就可以进入插入模式。要返回命令模式,只需按键。

3.末行模式

在命令模式下,按 :键就进入末行模式。在末行模式下可以进行保存文件,退出,查找字符串,文本替换,显示行号等操作。一条命令执行完毕,就会返回命令模式。

启动vi

vi :不指定文件名,再保存文件时需要指定文件名

vi 文件名 :该文件既可以是已存在的也可以是新建的。

vi +n 文件名 :进入vi,光标停在第n行开始处。

vi +/字符串 文件名 :进入vi,光标停留在第一个字符串处。

保存文件和退出

在末行模式输入如下命令:

w:保存当前正在编辑的文件,但不退出vi。

w! 文件名:将当前文件内容保存由“文件名”指定的新文件中,若该文件已存在则覆盖原文件,该命令不会退出vi。

q:不进行文件保存直接退出vi,若文件有改动过而没有保存将产生错误。

q! :强制退出vi,若文件内容有改动则恢复到文件的原始内容。

wq!:保存并退出vi,这是最常用的退出vi的方式。

光标的移动

在vi的插入模式下,一般使用键盘的4个方向移动光标。而在命令行模式下有很多方法:

0:移动到当前行的行首

$:移动到当前行的行尾

w:右移一个字。

nw:右移n个字,n为数字

b:左移一个字

nb:左移n个字,n为数字

( :移到本句句首,如果已处于本句句首,则移动到前一句的句首。

):移动到下一句的句首。

{:移到本段的段首,如果已处于本段的段首,则移动到前一段的段首。

}:移动到下一段的段首。

nG:移动到文件第n行的行首。

文本的删除

在插入模式下,用delete键可以删除光标所在位置的一个字符,用back space键 删除光标所在位置的前一个字符。在命令模式下,有各种各样的删除文本的方法:

x:删除光标所在位置的一个字符

nx:删除光标所在位置的n个字符。

db:删除光标前的一个字。

ndb:删除光标前的n个字。

d0:删除从光标前一个字符到行首的所有字符。

d$:删除光标所在字符到行尾的所有字符。

dd:删除光标所在的行。

ndd:删除从当前行开始的n行

d(:删除从当前字符开始到句首的所有字符。

d):删除从当前字符开始到句尾的所有字符。

d{:删除从当前字符开始到段首的所有字符。

d}:删除从当前字符开始到段尾的所有字符。

提示:如果要取消前一次操作,在命令模式下输入字符u即可。

文本查找和替换

在命令模式下,查找文本方法:

?string :在命令模式下输入?和要查的字符串如“string”并回车即可。

n:向文件头方向重复前一个查找命令。

N:向文件头方向重复前一个查找命令。

:s/oldstr/newstr :在当前行用newstr字符串替换oldstr字符串,只替换一次。

:s/oldstr/newstr/g :在当前行用newstr字符串替换所有的字符串oldstr。

:1,10s/oldstr/newstr/g :在1-10行用newstr字符串替换所有的字符串oldstr。

:1,$s/oldstr/newstr/g :在整个文件中用newstr字符串替换所有的字符串oldstr。

文本的复制与粘贴

yw:将光标所在位置到字尾的字符复制到缓冲区。

nyw:将光标所在位置开始的n个字符复制到缓冲区。

nyb:从光标开始向左复制n个字。

y0:复制从光标前一个字到行首的所有字符。

y$:复制从光标开始到行末的所有字符

yy:复制当前行。

nyy:复制从当前行开始的n行。

p:在光标所在位置的后面插入复制的文本

P:在光标所在位置的前面插入复制的文本。

np:在光标所在位置的后面插入复制的文本,共复制n次

nP:在光标所在位置的前面插入复制的文本,共复制n次

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值