vim 基础用法

vim 的基础操作

一、编辑操作

1、输入编辑内容

如果在其它模式下,需要先按 ESC 键,到一般模式,然后点击 i 按键,即可进入到 INSERT 插入模式

2、复制粘贴

1)、从其它地方复制的文本内容,粘贴到文件中(插入模式

直接 vim file ,进入 INSERT 模式后,快捷键进行 ctrl + v 即可进行将文本内容进行粘贴。

2)、从当前文本中复制粘贴选中的部分内容(可视模式

  • ESC 回到普通模式
  • 将光标移动到需要进行复制的文本字符前面,按 v 键(小写为选中对应字符,大写为选中整行) 进入到 VISUAL模式。
  • 移动左右键来选中对应的文本,被选中的内容背景显示为白色。
  • 按下 y 键复制选中的内容,按下 d 剪切选中的内容
  • 将光标移动到需要粘贴的位置,按下 p (小写)将复制的内容粘贴到此处。

3)、从当前文本中复制整行内容并进行粘贴(一般模式

  • 首先按 ESC 回到 一般模式
  • 将光标移动到需要进行复制的行,按下 yy 将复制光标所在的一整行内容。
  • 移动光标到合适的位置,按 p(小写)将内容粘贴到光标的下一行,按 P(大写)将内容粘贴到光标的上一行
  • 【一般模式下选中复制内容操作】:
    • nyy:n 为数字,表示复制光标所在行到向下的 n 行,如 输入 6yy 表示复制从光标所在行往下,一共6行的内容。
    • y1G:复制光标所在的行到第一行的所有内容
    • yG:复制光标所在行到最后一行的所有内容
    • y0:复制光标所在的字符到该行首的所有内容。
    • y$:复制光标所在的字符到改行尾的所有内容。

4)、剪切/删除 当前文本中的内容(一般模式

如果要删除或剪切一些内容,一般是按 d,主要用法如下:

  • dd:默认删除光标所在行的整行内容,此时该内容在粘贴版上,按p可以在需要的地方进行粘贴,否则相当于删除该行 。
  • ndd:n 为数字表示要删除从光标所在行开始往下的 n 行内容。如 6dd表示删除从光标所在行开始往下的6行内容。
  • d1G:删除光标所在行,到第一行的所有内容。
  • dG:删除光标所在行到最后一行的所有内容。
  • d0:删除光标所在位置的字符到该行首的所有内容。
  • d$:删除光标所在位置的字符到该行尾的所有内容。
  • nx:连续向后删除 n 个字符,如 6x表示连续向后删除 6 个字符。

3、撤销与重做(一般模式

  • u:撤销当前的操作,相当于恢复之前的内容
  • ctrl + r:重做上一步。

二、常用的相关操作

1、光标移动操作 (一般模式

  • gg:移动到文件的第一行行首位置
  • G:移动到文件的最后一行
  • nG:n表示数字,如 6G 表示移动到第6行
  • 0:移动到当前行的行首
  • $:移动到当前行的行尾

2、搜索字符内容(一般模式

  • /string:搜索光标以后的所有 string
  • ?string:搜索光标之前的所有 string
  • 匹配之后点击 enter进行搜索,按 n 跳转到下一个,按N跳转到上一个。
  • 命令行模式 下设置搜索结果】:
    • :set hlsearch:高亮显示匹配的结果
    • :set nohlsearch:取消高亮显示
    • :set ignorecase:搜索前,输入该指令,搜索时将忽略大小写
    • :set noignorecase:搜索前,输入该指令,搜索时区分大小写,默认情况下区分大小写

3、替换字符(命令行模式

进入到命令行模式 :,输入如下命令

  • 1,$s/word1/word2/g:从第一行到最后一行搜索 word1字串,并用word2来进行全部替换, g 表示全局替换。
  • m,ns/word1/word2/gm,n表示行数,从mn行之间搜索 word1字串,并用word2来进行全部替换。

4、命令行模式下的常用命令:

  • w:将当前文件保存
  • w!:强制保存
  • e!:丢弃当前做的所有更改,恢复到上一次保存的结果。
  • q:离开vim,如果有编辑且未保存会警告提示。
  • q!:强制离开,且不保存数据。
  • wq:保存数据并离开vim
  • w <fileName>:将当前文件另存为 fileName的文件。
  • m,n w <fileName>:将 m,n行之间的内容保存成新的文件 fileName,包含mn行。
  • !<command>:暂时离开vim,执行临时的命令command,并查看结果。如 vim 正在编辑文件,此时需要临时执行 df -h命令并查看结果,且不想退出vim时,可以在命令行模式下输入指令:!df -h
  • set nu:显示行号
  • set nonu:不显示行号

5、多文档编辑

vim <file1> <file2> 将同时开启编辑多个文件,输入:进入到命令行模式

  • n:跳到下一个文件进行编辑
  • N:跳到上一个文件进行编辑
  • files:列举 vim 开启的所有文档:
posted @   Jeffxue  阅读(668)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示