Vim基础用法,最常用、最实用的命令介绍(保姆级教程)

简介: Vim基础用法

### 配置文件设置

- set number (设置行号)

- set nocompatible (设置不兼容vi模式,不设置会导致许多vim特性被禁用)

- set clipboard=unnamed (设置普通的复制粘的内容和vim复制的内容相互使用)

### 打开、编辑,查找文件

- vim + 任意文件名,如vim file.txt, 直接编辑文件, 不存在则创建文件

- 已经打开了vim的情况,使用:edit + 文件名编辑其他文件, :edit file.txt  

- :edit *.txt`<tab>` 查找当前目录以txt结尾的文件,使用tab补全提示,左右切换选择文件

- :edit **/*.txt`<tab>` 查找当前项目(多个目录)的所有带txt后缀的文件

- :edit ./ 列出当前目录所有的文件,edit后传目录名参数

- :find *.txt 同样是查找以txt结尾的文件

### 保存、退出  

- :w (保存文件)

- :w file.txt (vim直接进入的终端,新建的文件保存,给出文件名)

- :wq (保存并退出vim)

- :q! (不保存强行退出)

### 移动命令

- h (左)

- j (下)

- k (上)

- l (右)

### 复制、粘贴、剪切/删除、撤销、取消撤销

- y (复制)

 - yw (向右复制一个单词)

 - yb (向左复制一个单词,不包含自身)

 - vy (复制当前游标对应的字母)

 - y$ (复制当前字符到行尾)

 - y^ (复制当前字符到行首  )

 - yG (从当前位置复制到文件结尾)

 - yf+(任意字符), (从当前字符复制到任意字符)

 - yy (复制当前一整行)

- p (粘贴)

 - p (粘贴到游标所在行的下方)

 - shift + p 或者叫大写的P (粘贴到游标所在行的上方)

- d (剪切/删除)

 - vd/x (删除当前游标所在的字符)

 - dw (删除游标右边的单词)

 - db (删除游标左边的单词)

 - d$ (删除从当前游标到行尾)

 - d^ (删除当前游标到行首)

 - dG (删除从当前行到文件结尾)

 - df+(任意字符) 或 vf+(任意字符)+d (删除从当前字符到任意字符)

 - diw/daw (游标在单词任意位置时,可以删除完整单词)

 - dd (删除当前一整行)

 - d操作后,按p,就是剪切

- u (撤销)

 - u (相当于ctrl + z)

 - ctrl + r (取消撤销,相当于ctrl + y)

### 选中

- v (选中当前游标的字符)

- ctrl + v (选中多列/垂直选取)

- shift + v (选中多行/水平选取)

- viw (选中当前游标位置的整个单词)

- viw + d / y (选中之后可以删除、复制)

### 跳转

- w (向右跳转一个单词)

- b (向左跳转一个单词)

- ^ (跳到行首的非空字符)

- 0 (跳到行首的第一个字符)

- $ (跳到行尾)

- gg (跳到文件最顶部)

- shift + g 或者叫 G (跳到文件最底部),引申的命令:ggvG (全选)-解释:选中最顶部到最底部,即全选

- nG (n表示行号,例:16G,表示跳到16行)

- 50% (跳到文件的中间位置)

- n% (跳到文件的对应的比例位置)

- ctrl + f (向下翻页)

- ctrl + b (向上翻页)

- ctrl + d (向下翻半页)

- ctrl + u (向上翻半页)

### 行内搜索

- f + (任意字符), 向右搜索,(游标会跳到搜索到的第一个字符)

- shift + f + (任意字符), 向左搜索,(游标会跳到搜索到的第一个字符)

- f + (任意字符) + ; (;表示在同一行向后重复搜索匹配的字符)

- f + (任意字符) + , (,表示在同一行向前重复搜索匹配的字符)

### 换行

- o (向下换行)

- shift + o 或者叫O (向上换行)

### 插入模式

- i (光标在游标字符的前面)

- a (光标在游标字符的后面)

### 大小写转换  

- gU + 任何位置,如:$、w、G、f + 任何字符,当前选中的单词转换为大写

- gu + 任何位置,如:$、w、G、f + 任何字符,当前选中的单词转换为小写

### 文件内搜索

- / + 任何字符, 从前往后搜索, (游标会停留在第一个匹配的字符,按n匹配下一个,shift + n 匹配上一个)

- ? + 任何字符, 从后往前搜索, (游标会停留在第一个匹配的字符,按n匹配下一个,shift + n 匹配上一个)

- / 和 ? 两者是相反的操作

### 括号匹配

- % (当有多对括号时,会跳到对应的左括号/右括号, 适用于:(), [], {}, <>)

### 综合应用

- 如v + f + (任意字符) + d / y:表示先选中当前字符,再通过f + 搜索任意字符, 此时,游标会跳到匹配的字符, 按d删除,或按y复制

- v + i + (  会选中小括号的内容,右括号也可以

- v + i + [  会选中中括号的内容,右括号也可以

- v + i + {  会选中花括号的内容,右括号也可以

- di(  删除括号中的内容, 右括号也可以

- da( 删除选中的内容并且包括括号本身, 右括号也可以

### 退出插入模式

- ESC

相关文章
|
4月前
|
Unix Linux 开发工具
在Linux中,有哪些基本的 Vim 命令?
在Linux中,有哪些基本的 Vim 命令?
|
2月前
|
Unix Linux 开发工具
Linux Vim的 命令大全
Linux Vim的 命令大全
23 0
|
3月前
|
存储 Linux Shell
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
这篇文章介绍了Vim编辑器的基本使用、常用命令和模式,以及Linux系统中用户和组的管理方法,包括用户和组相关文件如/etc/passwd、/etc/shadow和/etc/group的说明。
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
|
3月前
|
存储 Linux 编译器
linux中vim介绍以及常用命令大全
linux中vim介绍以及常用命令大全
85 8
|
4月前
|
开发工具
vim编辑器常用命令
vim编辑器常用命令
89 1
|
5月前
|
JSON Java Linux
linux 命令使用总结:vim,nohup,find,df,du,sudo,netstat,ll,curl,lastlog
linux 命令使用总结:vim,nohup,find,df,du,sudo,netstat,ll,curl,lastlog
70 5
|
4月前
|
开发工具
基本 Vim 命令 - 入门指南
【8月更文挑战第18天】
51 0
|
5月前
|
Ubuntu Unix Linux
Linux Vim最全面的教程
Linux Vim最全面的教程
|
6月前
|
程序员 开发工具
Vim命令大全:掌握编辑利器
Vim命令大全:掌握编辑利器
|
5月前
|
Ubuntu Linux 开发工具
Linux Vim最全面的教程
Linux Vim最全面的教程
223 0