使用文本编辑器之vim编辑器

使用文本编辑器——vim编辑器

1. vim操作模式

  • 命令模式(Command mode):输入的任何字符都作为命令(指令)处理。

  • 插入模式或输入模式(Insert mode):输入的任何字符都作为插入字符处理。

  • 末行模式(Last line mode):执行文件级或全局性操作,如保存文件、退出编辑器,设置编辑环境等。

从插入模式切换到命令模式,至需按<Esc>键。

命令模式下输入“:”切换到末行模式,从末行模式切换到命令模式也需要按<Esc>键。

如果不知道处于那种模式,可以直接按<Esc>键确认进入命令模式。

在这里插入图片描述

2. 打开/启动vi编辑器

  • 命令:

①vi filename

说明:打开或新建文件(没有文件会新建一个文件),并将光标置于第一行首。

②vi +n filename

说明:打开文件,并将光标置于第n行首。

③vi + filename

说明:打开文件,并将光标置于最后一行首。

④vi -r filename

说明:在上次正用vi编辑时发生系统崩溃,恢复filename。

⑤vi filename1 filename2 …… filenamen

说明:打开多个文件,依次进行编辑。

3. 编辑文件

(1) 编辑文件 (文本输入模式)

  • 命令模式下,可以输入相应的命令进入文本输入模式。
  • 命令:

①i

说明:从当前光标所在位置前插入文本。

②I

说明:从当前光标所在行的行首插入文本。

③a

说明:从当前光标所在位置之后插入文本。

④A

说明:从当前光标所在行的行尾插入文本。

⑤o

说明:从当前光标所在行的下面新开一行。

⑥O

说明:从当前光标所在行的上面新开一行。

(2) 编辑文件 (光标移动和屏幕命令)

  • 命令:

①四个方向键或h、j、k、l四个键(正规的vim用法)

说明:可以上下左右移动光标。

②数字0

说明:将光标移至当前行的行首。

③$

说明:将光标移至当前行的行尾。

④G

说明:将光标移至文件最后一行。

⑤nG

说明:将光标移至指定行号对应行的行的行首。

⑥Ctrl+b

说明:向上翻一页。

⑦Ctrl+f

说明:向下翻一页。

⑧Ctrl+g

说明:显示vi状态行上的状态信息。(文件名、当前行号等)

(3) 编辑文件 (删除)

  • 命令:

①x

说明:删除光标处的单个字符。

②nx

说明:删除从光标所在位置开始向右的n个字符。

③X

说明:删除光标前面的那个字符。

④nX

说明:删除从光标前面那个字符开始的向左n个字符。

⑤dd

说明:删除光标所在的整行。

⑥ndd

说明:删除当前行开始向下n行。

⑦d0

说明:删除从光标前一个字符开始到行首的内容。

⑧d$

说明:删除从光标所在处开始到行尾的内容。

⑨dw

说明:删除一个单词。

⑩ndw

说明:删除n个指定的单词。

(4) 编辑文件 (复制、粘贴、撤销、重复)

  • 命令:

①yy

说明:复制光标所在行。

②nyy

说明:复制从光标所在行开始向下n行。

③yw

说明:复制一个字。

④p

说明:将缓存区的内容(删除或复制操作的结果)粘贴到光标所在位置。

⑤u

说明:恢复上一次操作。

⑥.

说明:重复执行上一次操作。

(5) 编辑文件 (搜索/查找)

  • 命令:

①/

说明:在文本中从上向下搜索字符串。

②?

说明:在文本中从下向上搜索字符串。

③n

说明:显示搜索命令定位到下一个字符串。

④N

说明:显示搜索命令定位到上一个字符串。

4. 末行模式

  • 命令:

①:set nu

说明:显示行号。

②:set nonu

说明:不显示行号。

③:n

说明:跳转到数字指定的行。

④:m,ns/字符串1/字符串2/g

例如 :1,9s/sum/mysum/g(从1行到9行范围,将sum替换成mysum,且默认全部替换,不作任何提示)

说明:(1)从m行到n行(指定范围),将字符串1替换成字符串2;

​ (范围使用“m,ns”的形式表示从m行到n行(s必须写,语法要求))

​ (2)对于整个文件,可以表示为1,$s或%s;

​ (3)若g改为c,表示在替换过程中要求确认是否替换。

​ (每一个都会提示:replace with mysum (y/n/a/q/l/E/Y)?)

​ (注:g:表示替换不必确认;c:表示在替换过程中要求确认是否替换)

⑤:w

说明:保存文件并继续编辑。

⑥:w filename

说明:将当前文件保存为指定的文件名filename。

⑦:wq

说明:保存并退出vi编辑器。

⑧:wq!

说明:强制保存退出。

⑨:q

说明:退出。

⑩:q!

说明:不保存文件强行退出。

5. 多文件操作

  • 要将某个文件内容复制粘贴到另一个文件中当前光标处,可在末行模式下执行命令:r filename, filename的内容将粘贴进来。
  • 要同时打开多个文件,启动时加上多个文件名作为参数,如:vi filename1 filename2。打开多个文件之后,在末行模式下可以执行命令:next和:previous在文件之间切换。
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会游泳的鱼ꦿ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值