vi常用命令

插入:

i        从光标当前位置开始插入
a        从光标当前位置的下一个字符开始插入 
o        在光标位置的下行插入一个空行,再进行插入
O        在光标位置的上一行插入一个空行,再进行插入
I        从光标所在行的开头开始插入正文
A        从光标所在行的末尾开始插入正文
esc = ctrl+[

文件保存与退出:

:w              保存文件
:q              退出文件
:wq             保存并退出文件    =    :x         
:w <filename>   另存为 <filename>
:w!             强制保存文件
:q!             强制退出文件

删除,撤消,反撤消:

[n]x         删除从光标开始的连续n个字符
   dd        删除光标所在行
[n]dd        删除从光标开始的n行
u            撤消
U            撤消对一行的全部操作
ctrl+r       反撤消
.            重复上次操作

复制,粘贴:

   yy        复制光标所在的行
[n]yy        复制从光标开始的n行
y$           从光标位置复制在行尾
p            粘贴
gp           粘贴

选择:

v            按字符选择
V            按行选择
ctrl+v       按块选择

光标跳转:

h、j、k、l        左、下、上、右
H、M、L           屏幕最上边、屏幕中间位置、屏幕最下边
gg               跳到文件第一行
G                 跳到文件最后一行
$                 跳到行末
0(数字0)         跳到行首
[n]gg(或[n]G)    跳到文件第n行

 编辑模式下按v 进入可视状态进行内容选择:

[n]shift + >      所选内容向右移动一个tab
[n]shift + <      所选内容向左移动一个tab

 查找替换:

/string               查找字符串 ,配合n(next)使用
*                     向后搜索光标所在位置的一个word
#                     向前搜索光标所在位置的一个word

/\<xxx                查找以xxx开头的字符串
/xxx\>                查找以xxx结尾的字符串
/\<xxx\>              完全匹配查找

d/int main            从光标所在位置开始删除,直到遇到int main

:s/str1/str2          用str2替换行中首次出现的字符串str1
:s/str1/str2/g        用str2替换行中所有的字符串str1

:%s/str1/str2/g       用str2替换全文中所有的字符串str1,不询问,强制替换
:%s/str1/str2/gc      用str2替换全文中所有的字符串str1,询问

vim设置:

set number
set nonumber

set ignorecase      #忽略大小写 (查找字符串时)
set noignorecase

set ruler           #显示当前光标所在位置
set nuruler

set hlsearch        #高亮显示 (查找字符串是,找到后高亮显示)
set nohlsearch

set incsearch       #在输入字符串时就开发查找
set noincsearch

 
syn on              #高亮显示
set backspace=2     #backspace可用 

 

posted @ 2020-04-15 22:08  爱敲代码的二百斤  阅读(225)  评论(0编辑  收藏  举报